.. role:: raw-html(raw)
    :format: html

.. |supported| image:: ../../_assets/images/green_circle.png
   
.. |na| image:: ../../_assets/images/grey_circle.png
   
.. |unsupported| image:: ../../_assets/images/red_circle.png
   
.. |partialsupport| image:: ../../_assets/images/gray_green_circle.png

##################
|HPSTHEN| 2024.4.0
##################

**PLATFORM SUPPORT WARNINGS** Support for Xamarin platform ends in release 2024.5.0. |HPSTHEN| x86 architecture is now deprecated and support is scheduled to end with |HPSTHEN| 2024.8.0 in December, 2024. As part of this deprecation, customer packages for this platform are no longer accessible from the Developer Zone. Contact Tech Soft 3D Support for access to this platform. Support for Visual Studio 2017 (V14.1) is now deprecated and is scheduled to end with |HPSTHEN| 2024.8.0 in December, 2024.

Technology Updates
==================

Library Compatibility Information
---------------------------------

.. only:: not spatial

	.. csv-table::
		:header: "Library name", "Version", "Windows", "Linux", "OS X", "Android", "iOS", "Notes"
		
		"HOOPS Exchange", "2024.4.0", |supported|, |supported|, |supported|, |supported|, |supported|, "Android simulator support is limited. See this :ref:`explanation <prog_guide/0906_exchange_integration:Important note for Android developers>`."
		"HOOPS Publish", "2024.4.0", |supported|, |supported|, |unsupported|, |unsupported|, |unsupported|, "Requires SSSE3 instruction set support, Linux support is limited to C++"
		"|HCTHEN| Sprocket", "2024.1.0", |supported|, |unsupported|, |unsupported|, |supported|, |supported|, "HC Sprocket only works with Visual Studio v142."
		".NET Framework", "4.5", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for VS 2017 libraries and samples."
		".NET Standard", "2.0", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for VS 2019 libraries."
		".NET Core", "5.0", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for VS 2019 samples."
		"Parasolid", "34.1", |supported|, |supported|, |supported|, |unsupported|, |supported|, "For iOS platforms, support is limited to 64-bit platforms for the Parasolid Sprockets (hps_sprk_parasolid and hps_sprk_exchange_parasolid)."
		"RealDWG", "2019", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "RealDWG 2019 works with Visual Studio 2017 Update 2 and Visual Studio 2015 Update 3"
		"Qt", "5.12.7", |supported|, |supported|, |supported|, |unsupported|, |unsupported|, ""
		"SketchUp", "2023", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "VS2019 Redistributable required, and only x64 Sketchup is supported"
		
.. only:: spatial

	.. csv-table::
		:header: "Library name", "Version", "Windows", "Linux", "OS X", "Android", "iOS", "Notes"
		
		".NET Framework", "4.5", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for VS 2017 libraries and samples."
		".NET Standard", "2.0", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for VS 2019 libraries."
		".NET Core", "5.0", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "Required for VS 2019 samples."
		"Parasolid", "34.1", |supported|, |supported|, |supported|, |unsupported|, |supported|, "For iOS platforms, support is limited to 64-bit platforms for the Parasolid Sprockets (hps_sprk_parasolid and hps_sprk_exchange_parasolid)."
		"RealDWG", "2019", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "RealDWG 2019 works with Visual Studio 2017 Update 2 and Visual Studio 2015 Update 3"
		"Qt", "5.12.7", |supported|, |supported|, |supported|, |unsupported|, |unsupported|, ""
		"SketchUp", "2023", |supported|, |unsupported|, |unsupported|, |unsupported|, |unsupported|, "VS2019 Redistributable required, and only x64 Sketchup is supported"


TableToPDF Deprecation
----------------------

The *TableToPDF* module is now deprecated and will be dropped by the end of year 2024. Please contact our "Support" Team (https://partner.support.techsoft3d.com/servicedesk/customer/portals) if you have questions regarding this capability.
This add-on is used for HOOPS Publish Integration and :ref:`creating tables in PDF documents <layout_table>`.


Features and Enhancements
=========================

* **CreateNormalisationTransformation()** New method added to the API that converts transformation matrices from pixel coordinates to window coordinates. See the :ref:`Changing window size <changing_window_size>` subsection on the Cameras page of the Programming Guide for additional information.


Functional Changes
==================

* **File Import Status Handling** Import() for Stream, STL, OBJ and point cloud file types now takes ``ImportNotifier`` as an argument instead of returning it as a value. This ensures the ``ImportNotifier`` exists before starting the import operation in order to better catch errors that can occur during the import process. Previously, if an error occured before the notifier was constructed, then it was possible the notifer would not reach the ``EmergencyHandler``.  static ``ImportNotifier Import(char const* in_file_name, ImportOptionsKit const& in_options)`` is now deprecated and will be removed in a future release.

* **Text Rendering** Text is now drawn in cases where its size is matrix dependnent (e.g. underlined text) and segment display lists are on.

* **Highlights** Geometry remains visible when segements with line weight greater than zero are highlighted. Highlights of different styles on different segments display the requested highlight. Individual shell vertices colored by RGBA can be highlighted.

* **Handles Operator** Handles are visible when using Metal driver.

* **Orbit Operator** Orbit operator behavior is consistent regardless of window size by using CreateNormalisationTransformation().


Fixed Bugs
==========

.. csv-table::
    :header: "Issue", "Description"

    "SDHV-20581", "Disappearing LineKeys after highlighting LineKeys on the same parent segment key"
    "SDHV-20546", "When I export OOC.PointCloud.Export, the originally imported point cloud disappears."
    "SDHV-20527", "HPS::OOC::PointCloud::Export() may crash"
    "SDHV-20496", "HandlesOperator (and rest all operators)  in iOS-Sandbox seems not Working [240226-000005]"
    "SDHV-20491", "Highlighting does not work for colored ShellKey vertices"
    "SDHV-20414", "Wrong text render"
    "SDHV-20378", "Problem with Oribt camera operation in hps_wpf_sandbox[231127-000000]"
    "SDHV-20098", "Text greeking issue"
    "SDHV-19607", "Is is possible to set a highlight on the back face that  is different than the front face?"
