3D Meshing Release Notes

3D Meshing version: v2.3.0

2.3.0

2026-06-15

Added

Added serialization for ProcessingSettings structs to and from the string which holds JSON.

Added support for cluster filtering on Linux (formerly only for Windows).

Added logging of system info.

Added support for Ubuntu 20, Ubuntu 22 and Ubuntu 24.

Added support for colored union point cloud and mesh in API.

Lowered potential conflicts with dynamically linked third party libraries.

Added support for scan files without normals.

Scan and surface style will be now remembered between sessions.

Removed ComXimController external executable dependency.

Improved device calibration robustness by using color reprojection if available, or LED texture otherwise.

Added detailed application version tracking in logs for better troubleshooting.

Rebranded Photoneo to Zebra Technologies Slovakia.

Updated PhoXi API to version 1.17.0

Added README.md for each API example.

App: Rebranded to 3D Meshing.

App: Added settings dialog buttons for opening config and log folders in the file explorer.

App: Added experimental support for Intel and AMD GPUs.

App: Added support for camera panning using Shift + Left Mouse Button.

App: Added logging of currently loaded configuration values after configuration reload.

App: Extended documentation of background removal parameters in config_prafos.txt.

Fixed

Fixed memory leaks.

Fix the issue when mesh or union point cloud contained NaN color values.

Fixed the header for scans exported to PLY file format.

Added missing API documentation.

Fix cmdLineParse error on the surface reconstruction action that occurs on some systems.

Fix handling of “scan add” errors in the import scans action.

Improved PhoXi Control version display to show “unknown” instead of “0.0.0” when a version cannot be determined.

Added support for Gen3 devices.

App: Fixed saving and restoring status of the export dialogs.

Fix scans not aligning correctly due to coordinate/camera space inconsistencies.

App: When scan import fails on projection errors, the message is shown and they no longer show in gui.

App: Fixed the empty tooltip on the export dialog warning icon (file extension).

App: Removed information dialog when a license was not found after startup.

App: Removed unused manual_ground_offset parameter from config.

App: Renamed auto_capturing_delay_ms to loop_pipeline_delay_ms in config.

App: Fixed parsing of the background-removal config parameter prg_offset.

App: Fixed uninstall to also clean up the current user’s app data folder in AppData/Local (config, logs, and temporary files).

2.1.0

2024-09-06

Added

Updated PhoXi API to version 1.13.4

Added support for AlignScanSets on Linux (formerly only for Windows).

Fixed

App: Fixed the bug when all config files contained data from config.txt.

App: Fixed invalid path for poisson executable on Linux.

App: Fixed matcap material visualization.

App: Fixed the error message when running mesh Reconstruction on Windows and removed the option to set an intermediate directory in config.

2.0.0

2023-06-09

Added

Linux support for API and GUI.

Support for scan colors: Colored scan min/max values adjustable via GUI and API. GUI has new export options for color data. Unification of color and intensity data in union creation. Filtering of black- colored points before mesh creation.

Automatic recognition of inverted markers during calibration and manual scan capturing.

Removed Python installation dependency.

Removed forced histogram equalization on scan intensity data.

Keylok licensing system replaced with Sentinel.

Linux version is now distributed as a “.deb” package.

Moved the default installation directory to Photoneo/<version> subdirectory.

User directory with configuration, temporary, and log files moved to a user-specific directory On Windows: “C:/Users/<User>/AppData/Local/PhoXi3DMeshing/<version>” On Linux: “/home/<User>/.config/PhoXi3DMeshing/<version>”

Added GetColoredMesh and GetColoredUnionPointCloud functions to the API.

App: Added a config option to keep devices connected on application termination.

App: Versioning system in config files to detect stale config files.

App: Styles visualization options are also available for scans.

App: Using an internal dialog system for messages and confirmations.

App: Updated welcome screen.

Fixed

Fixed the issue when intensities were not available after getting a scan in API.

Calibration volume cut, and ROI are disabled during calibration.

Device settings are restored after the calibration.

Fixed automatic detection of a motion camera device type.

Fixed a crash when importing an unorganized point cloud and showed an error message instead.

Automatic mode: removed unnecessary setting of camera space on the device.

App: Render style keyboard shortcut changed to Alt+Key to not compete with numeric input.

App: When clicked Capture button in rotation pad mode, scans are now deselected.

App: Style files are loaded only once before showing the specific style.

App: Fixed “PhoXi Control not running” message not hiding in the device setup dialog.

1.3.2

2022-5-10

Added

Added a welcome screen for easier license handling.

Added support for Alpha scanners.

Fixed

Removed datasets designed for tests from API examples.

1.3.1

2022-3-1

Added

Updated PhoXi Control support to version 1.7.5.

Added an API interface for removing all scans.

Finalizing the full 360 ° rotation in the CaptureScansAuto API method can now be turned off.

Added new ordered alignment strategy for linear datasets.

Added a smoothing option to point cloud union generation to API.

Added intensity to the color option to point cloud union generation to API.

Added missing API documentation.

Added setting for union upsampling feature to API which effectively doubles the number of points in the union point cloud.

Added config parameter for the union upsampling feature to the app (pr_enable_upsampling).

Added user control over Standa rotary table speed, acceleration, and the number of motor micro-steps for a full rotation.

Optimized speed of scans filtration (up to 10x faster).

Optimized loading of .praw files.

Added a new option in API which enables users to have connected the same devices in two instances of P3DM_API in the same process.

Added option to provide a callback function to CaptureScansAuto in the API, that will be called when the last device trigger is executed.

Added warning when the wrong version of PhoXi Control is used.

Fixed

Fixed the error “Rotation angle parameters cannot be empty” while scanning in automatic mode.

Fixed the bug when scanner with lower than max resolution would not align and filter correctly.

Fixed wrong release dates in the readme.

Fixed the wrong point cloud union output space in API.

Fixed the bug with an ignored config parameter.

Fixed the capture rotation pads action by transforming into the new camera space.

Fixed the disabled 3D model creation button after an action fails.

Fixed intensity artifacts when using MotionCam.

Fixed crashing on adding multiple actions at once.

Fixed crashing the reconstruction action.

Increased timeouts for both Standa and ComXim tables.

When calibrating MotionCam, the device mode is automatically set to Scanner for better registering of markers.

Fixed crashing when a user tries to scan with a device that has turned off normals. Normals will be now automatically enabled.

Fixed the bug in API, when “Rotable Background Removal” settings prg_precision, prg_max_height, and prg_offset were in meters instead of millimeters.

Users can use either classic or inverted marker patterns from now, but it is necessary to set “InvertedMarkers” in a device properly.

Fixed the issue when P3DM’s changes to a device setting were saved also to the user profile.

Fixed the bug in the API method AddScan, where scans were converted to the wrong coordinate space.

Fixed crashing when a scanner has disabled texture.

Added error message when a user tries to import an unsupported .ply scan.

Fixed the wrong copyright year in the info dialog.

Fixed space inconsistencies when loading scans in camera space in the API.

Removed mesh import support for all formats but *.cogs.

Fixed the bug in API, where the exported union was in the wrong space when using scans in other than marker space.

Fixed crashing when scanning in manual mode with turned-off normal estimation on a scanner.

1.2.3

2021-1-13

Added

Added more detailed logging of action validation errors.

Updated 3rd-party Screened Poisson reconstruction.

Fixed

Fixed the problem with loading of .praw scans.

Fixed multisequence feature failure.

Fixed missing intensity data.

Fixed the crash during reconstruction.

Fixed missing API documentation.

Fixed validation of calibration.

1.2.2

2021-1-10

Added

Updated design of the API documentation.

Background removal in automatic mode is now more robust.

Temporarily removed support of .dae and .obj files for surfaces.

Calibration files were changed and version tracking was added. Older calibration files are no longer supported.

Fixed

Fixed the issue when a union was exported in the wrong space.

Fixed the issue when the import of .ply scans caused a crash.

1.2.1

2020-8-24

Added

Added automatic ground filtering.

Improved ICP robustness for various previously unalignable special cases.

Improved filtering speed.

Added an option to hide coordinate axes.

Updated scrollbar so that only items are scrolled, and control elements remain static.

Added MatCap visualization materials.

Added multiview point cloud smoothing for better reconstruction quality.

Added intensity data to reconstructed meshes.

Added ground removal in manual mode.

Fixed

Fixed excessive point removal in projection filtering.

Fixed compatibility between ICP settings for thin and blocky shapes.

Fixed visual issues with waiting for the PhoXi Control application.

Fixed crashing when an export path contained a non-ASCII character.

Fixed issues with hover in the settings dialog.

Fixed crashing in the debug build of API.

1.2.0

2020-6-29

Added

Added multisequence mode (available in settings), enabling users to make complete reconstructions of objects.

Extended API for support of multisequence mode workflow.

Added experimental cluster filtering (this feature is disabled by default).

Updated application icon.

Fixed

Fixed CEGUI “multiple deletion” error at the beginning of each log.

Removed Prafos dll.

Fixed the issue when multiple applications could not access the same USB dongle.

1.1.2

2020-5-5

Added

Redesigned device connection workflow in API that enables manipulation with devices in P3DM, such as calibrating as a secondary or primary device or to clear calibration from a device without the need to actually disconnect it from PhoXiControl.

Fixed

When using the “Device Setup” dialog, devices are disconnected from PhoXiControl only after the dialog is closed, which makes the dialog more user-friendly.

After closing the “Device Setup” dialog and there are devices to disconnect, the waiting spinner appears.

Fixed an issue in the “Secondary device setup” dialog when the “plus” button is disabled even if there are some devices available in PhoXiControl.

Replaced the wrong waiting dialog when scans were triggered from a FileCamera in PhoXiControl.

Fixed the bug, when even after failed recalibration of a secondary device, the button stayed green.

Fixed CEGIU “margin” error at the beginning of each log.

1.1.1

2020-3-30

Fixed

Fixed the issue when the XIMC rotary table was not available after calibration.

1.1

2020-3-26

Added

Added support for XIMC big rotary table.

Added XIMC software installer into the P3DM installer.

Added support for arbitrary rotary table controller with the predefined interface.

Added support for trial license keys.

Keylok and license checks were moved directly to P3DM_API and are now performed from the very start of the application.

Implemented experimental hidden setting for thin objects alignment.

Implemented experimental hidden setting for blocky objects alignment.

Fixed

Numeric spinner in the device setup is now more user-friendly.

Edit box in the automatic mode of the device setup dialog is now more user-friendly.

Added whitespaces to PrintGlmMat4 in examples.

Removed README.md from examples.

Ground offset is now in millimeters instead of meters.

Error and warning messages cannot lose focus anymore (are in front of the main window until dismissed).

Added missing documentation.

Fixed a huge memory leak in the API.

1.0.1

2020-2-27

Added

The application can now be used without administrator privileges.

Added the option of saving the aligned/merged point cloud.

Added the application version, date of release, and commit hash into the info dialog.

Updated EULA license and Photoneo logo.

Added the option to remove devices from “Secondary device setup”.

Added an uninstalling script to remove all leftovers.

Added notification when the scanner is disconnected.

The application now throws a warning when using a path to Python3 instead of Python2.

Added the debug version of API and improved examples.

Added python 2.7 with pyserial and VC_redist.x64 into the installer.

Setting changes are now visible immediately.

Added a complete path to config.txt to supress the “python path” warning.

Fixed

Fixed issues with calibrating a secondary already calibrated device as the primary device.

Reduced the number of warnings when calibration is loaded and the device setup is canceled.

The config files were moved to ProgramData to allow possible editing of the file.

The “remove scan” button is deactivated when there are no scans selected.

All the PhoXiControl calls were moved away from the GUI thread to improve application responsiveness.

The timeout parameter was removed from table_api, and the option for increasing the timeout was added to config.txt.

The application no longer crashes after hitting the “Print Screen” button.

Keylok protection is now re-enabled and shows a proper error when the dongle is not detected.

Increased “rotable_timeout_ms” default value to 15 seconds.

Improved application stability.

1.0

2020-1-14

Added

The application was renamed from TAROS to PhoXi 3D Meshing and the icon was updated.

Added support for import and export of Photoneo’s *.ply format.

At the start of capturing, the scans tab is selected and all existing scans are unselected.

The scans tab is automatically selected at the program start.

Created application installer.

Added a reset button to the settings.

Warning messages with rotation pad accessibility are now shown after the device setup dialog is open.

Added tooltips to iconic buttons.

Added translation support.

Updated the PhoXiControl version to 1.2.14.

The console on Windows is now hidden.

Removed the “Apply” button in settings.

Improved readability of action queue.

Implemented the “Loop rotary table pipeline” feature.

Scanning with the rotary table can now be interrupted.

Rapidly improved scanning time with automatic mode.

Added a warning message, if the number of rotary table turns is too low.

The number of rotary table turns can now be 1.

Coordinate space is now consistent with PhoXiControl.

Implemented background filtering in automatic mode (can be turned off in config).

Fixed

The rotary table can now acquire scans even if the master device is paused.

Removed GUI memory leaks.

Fixed the bug when the “capture and generate” button was disabled despite devices being available.

Fixed the one-scan delay after triggering manually in PhoXiControl.

Removed unnecessary warning messages.

Fixed crashing when installed in an admin-protected directory such as “C:/Program Files”.

Fixed the bug when *.stl mesh file was exported with NaN values.

0.1.1

2019-07-22

Added

Logical DPI support in GUI.

Basic point-cloud shading.

Action chaining and as-if-routine behavior.

Miscellaneous UX improvements.

Calibration erase.

Added Keylok protection.

Fixed

Axis alignment after scan import.

0.1

2019-6-28

Added

Installer/unzipper - the application runs on a user computer without any 3rd party requirements.

Import scans and surfaces from files a. Includes import of PhoXi file camera

Set-up (connect, disconnect and calibrate) devices (scanners) a. Display connected/disconnected/available status in GUI b. The calibration procedure will be stored after clicking the “Finish calibration button”. Then it is possible to connect to the device without recalibration. If a new setup (and calibration) is started but not finished, the application will revert to the old setup.

Setup scanning mode - automatic/manual.

Capture scans a. Automatic mode - with rotary table (in rotary table coordinate space) - captures the sequence of scans from connected devices + pad rotation b. Manual mode - with marker pattern board (in marker space) - captures scans from all connected and not paused devices in the sequence

Device configuration a. The user selects a primary device b. Allows selecting mode - automatic/manual c. In automatic mode calibrates rotation pad d. Other devices can be calibrated to a primary device or the other calibrated devices e. The configuration is stored in a file and restored when the application restarts

Run Prafos processing actions on scans and surfaces a. Scan alignment b. Scan filtering c. Surface reconstruction from scans d. Surface trimming e. Actions run on selected scans/surfaces only f. Allow simple editing of action settings by setting global quality modes

Export a. Export single scan (ply, cogs) b. Export multiple scans to a directory (ply, cogs) - allows the choice of a naming pattern in GUI c. Export a single surface (ply, stl, cogs)

Visualization of progress status a. Display a queue of actions that are being processed b. Display a progress bar for the currently executed action c. Lock screen when executing an action, disable action queue functionality d. Display result of actions in real-time i. Display scans and surfaces loaded or processed as they are loaded or processed

List of loaded/captured scans in GUI a. Allows user selection

List of loaded/created surfaces in GUI a. Allows user selection

List set-up devices in GUI a. Visualize which devices are being connected to b. Allow user activation of a device (for capturing from multiple devices) c. Enable the user to reset the saved device setup by pressing a single button

Remove scans and surfaces a. Each individual scan can be removed. b. Each individual surface can be removed. c. The workspace can be cleaned - removes all scans and surfaces.