Skip to content

Releases: lgactna/RectangleMappingTool

0.2.0 - Initial Release

10 Aug 00:39
3cf0201
Compare
Choose a tag to compare

Please see the README for more information about the program.

Again, please make sure you go out of your way to click "Browse" and create a new folder and set the installation directory to that new folder. Not responsible if the installer does a die and starts writing files to the middle of nowhere, or, worse, overwrites files (including when you inevitably have to run the uninstaller).

There seems to be an issue on Windows where installing to Program Files (x86) (or another protected folder) will cause preference changes to fail to write to disk/preferences.json and thus will be cleared upon program exit.

To fix this, either:

  • Install the program to some non-protected folder (for example, installing to a folder on my desktop allowed for preference changes without any issues)
    OR
  • Find preferences.json inside your install location
  • Right click on it, click on Properties
  • Go to the Security tab
  • Edit the permissions by clicking on Edit (should have the admin shield)
  • Give the "Users" group Full control under Allow
  • Click Apply

This should fix persistent preference changes.

edit Aug 17, 2020: add .deb, built on Ubuntu 20.04

0.1.0 - Initial build

05 Aug 23:38
94895ad
Compare
Choose a tag to compare
0.1.0 - Initial build Pre-release
Pre-release

This is a pre-release build with the bare minimum set of features that I think are needed to consider this program usable (or, at least, useful). If development were to stop with this release, it'd be good enough for AACT's use case.

Note that the debug flag was enabled when it was converted into a standalone executable with fbs, so you'll likely see terminal output on launch as a result.

With this release, much of the remaining work lies in the coordinate table tab and the canvas - exporting, changing/handling settings, and conversion are all more or less done. However, these are dependent on those two remaining elements, which means exporting still kinda sucks when you draw a single rectangle and your custom field data is gone.

Things it can do:

  • Draw rectangles and save their pixel locations as well as convert those pixel locations to arbitrary numerical values
  • Save and open external images, usually to set it as the canvas background
  • Export data to .txt based on a given f-string (well, an f-string-like format)
  • Export data to .csv with fine control over what is exported
  • Do some simple things based on user preference
  • Give you custom fields that you can export stuff with on a per-rectangle basis (really you can just do the same by exporting the base data and then throwing it all in a spreadsheet but it's too late to not have that feature now)

Things it can't do (yet):

  • Update rectangles when you change data in the coordinate table
  • Highlight rectangles when you select them in the table
  • Do anything other than show you data in the table (except for editing data right before an export)
  • Undo recent actions (other than a rectangle draw)
  • Allow you to set custom colors for each rectangle

Things it shouldn't do but does (at least sometimes):

  • Uses way too much CPU - many systems are inefficient and do stuff like "redraw the entire canvas every time you move the mouse" and "delete the entire coordinate table and then rebuild half of it"
  • Defaults to the user folder and magically overwrites a bunch of files for some reason (maybe a result of this being built with PyInstaller == 4.0.0dev, not fbs's suggested PyInstaller == 3.4 in combination with the use of Python 3.8)

WARNING: MAKE SURE YOU EXPLICITLY DEFINE AN INSTALL FOLDER. I'm not responsible if it decides to install to your users folder and (over)writes a million files and the uninstaller starts deleting completely unrelated files.

This program is a modified version of the PyQt Scribble example. As such, the following notice has been reproduced (it will be present in the README in the future and thus should be much more prominent than the release page):

Copyright (C) 2013 Riverbank Computing Limited.
Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
All rights reserved.

This file is part of the examples of PyQt.

$QT_BEGIN_LICENSE:BSD$
You may use this file under the terms of the BSD license as follows:

"Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

  • Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in
    the documentation and/or other materials provided with the
    distribution.
  • Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
    the names of its contributors may be used to endorse or promote
    products derived from this software without specific prior written
    permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
$QT_END_LICENSE$