-
AnnotationKit(SprocketPath const & in_source) - This constructor no longer exists. To get the same result, you need to construct the AnnotationKit using another one of the available constructors and then call SetSource on it. HPS::SprocketPath was previously used, but you would need to use a HPS::CADModel in HPS 2016 when calling SetSouce.
-
AnnotationKit::SetSource(KeyPath const & in_source) - This function no longer exists. Developers should use either AnnotationKit::SetSource(KeyPathArray const & in_source) or AnnotationKit::SetSource(size_t in_count, KeyPath const in_source []) to achieve the same result.
-
AnnotationKit::SetSource(SprocketPath const & in_source) - This function does not exist anymore. AnnotationKit::SetSource(CADModel const & in_source) has been added to replace it.
-
There are two new AnnotationKit::SetSource overloads. They are AnnotationKit::SetSource(CADModel const & in_source, KeyPathArray const & in_additional_sources) and AnnotationKit::SetSource(CADModel const & in_source, size_t in_count, KeyPath const in_additional_sources []).
-
AnnotationKit::ShowSource(Annotation::SourceType & out_source_type, SprocketPath & out_sprocket_paths, KeyPathArray & out_key_paths) const - This function signature has changed to AnnotationKit::ShowSource(Annotation::SourceType & out_source_type, CADModel & out_cad_model, KeyPathArray & out_key_paths) const (the difference is that callers will receive a HPS::CADModel instead of a HPS::SprocketPath).
-
Publish::File::Export(SprocketPath const & in_source, char const * in_file_name, ExportOptionsKit const & in_options) has been replaced by Publish::File::Export(CADModel const & in_cad_model, char const * in_file_name, ExportOptionsKit const & in_options).
-
There are four new HPS::Publish::File::Export overloads, which are used to access the new functionality of exporting a CAD model with the addition of selected key paths.
Significant API changes
In the name of standardization, we have made some necessary API changes that break compatibility with older code. Below is a list of those changes. To facilitate updating to the new libraries, we've included a Python script located in the /tools directory that can be used to automatically update an entire code base to the new API. The exception to this is the change to conditions, parts of which could not be discerned by regular expressions. The full details of these changes follow.
Various enumeration values have been renamed in order to standardize similar values and remove redundancy wherever possible.
- HPS::Window::UpdateControl enum has been renamed to HPS::Window::UpdateType.
- HPS::Window::UpdateControl enum fields have been renamed to HPS::UpdateOptionsControl::SetUpdateType.
- HPS::Handedness::Shell enum fields have been renamed to HPS::Handedness::Shell::[Fix|Reverse].
- HPS::Material::Type enum fields have been renamed to HPS::Material::Type::[None|RGBColor|RGBAColor].
- HPS::Material::Texture::Interpolation::InterpolationOff enum field has been renamed to HPS::Material::Texture::Interpolation::None.
- HPS::Material::Texture::Decimation::DecimationOff enum has been renamed to HPS::Material::Texture::Decimation::None.
- HPS::Performance::DisplayLists enum fields have been renamed to HPS::Performance::DisplayLists::[None|Geometry|Segment].
- HPS::Performance::StaticModel enum fields have been renamed to HPS::Performance::StaticModel::[None|Attribute|AttributeSpatial].
- HPS::Drawing::Handedness::NoHandedness enum field has been renamed to HPS::Drawing::Handedness::None.
- HPS::Drawing::Overlay enum fields have been renamed to HPS::Drawing::Overlay::[None|Default|WithZValues].
- HPS::Transparency::Method::Off enum field has been renamed to HPS::Transparency::Method::None.
- HPS::Transparency::Algorithm::NoSorting enum field has been renamed to HPS::Transparency::Algorithm::None.
- HPS::Text::Justification enum fields have been renamed to HPS::Text::Justification::[Left|Right|Center].
- HPS::Text::Renderer enum fields have been renamed to HPS::Text::Renderer::[Default|Driver|Truetype].
- HPS::Text::Rotation::NoRotation enum field has been renamed to HPS::Text::Rotation::None.
- HPS::Text::RegionAlignment enum fields have been renamed to HPS::Text::RegionAlignment::[Top|Center|Bottom].
- HPS::LinePattern::Join enum fields have been renamed to HPS::LinePattern::Join::[Mitre|Round|Bevel].
- HPS::LinePattern::Cap enum fields have been renamed to HPS::LinePattern::Cap::[Butt|Square|Round|Mitre].
- HPS::Glyph::Fill enum fields have been renamed to HPS::Glyph::Fill::[None|Continuous|New].
- HPS::Glyph::ColorSource::Normal enum field has been renamed to HPS::Glyph::ColorSource::Default.
- HPS::SegmentOptimizationOptions::UserData::Nothing enum field has been renamed to HPS::SegmentOptimizationOptions::UserData::None.
- HPS::SegmentOptimizationOptions::Matrix::Nothing enum field has been renamed to HPS::SegmentOptimizationOptions::Matrix::None.
- HPS::Operator::Priority::Normal enum field has been renamed to HPS::Operator::Priority::Default.
Functions that accept a kit have been renamed so they match the name of that type of kit. The Sprocket-level update paradigm has been brought into line with the style of HPS core by introducing the option of returning an update notifier.
- [Reference|Include|Style]Key::[Set|Unset|Show]Condition functions have been renamed to [Reference|Include|Style]Key::[Set|Unset|Show]ConditionalExpression.
- HPS::SegmentKey::[Set|Unset|Show]Boundings functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]Bounding.
- HPS::GeometryKey::ShowBoundings functions have been renamed to HPS::GeometryKey::ShowBounding.
- HPS::SegmentKey::[Set|Unset|Show]AttributeLocks functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]AttributeLock.
- HPS::SegmentKey::[Set|Unset|Show]CuttingSectionAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]CuttingSectionAttribute.
- HPS::SegmentKey::[Set|Unset|Show]CurveAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]CurveAttribute.
- HPS::SegmentKey::[Set|Unset|Show]CylinderAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]CylinderAttribute.
- HPS::SegmentKey::[Set|Unset|Show]EdgeAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]EdgeAttribute.
- HPS::SegmentKey::[Set|Unset|Show]LightingAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]LightingAttribute.
- HPS::SegmentKey::[Set|Unset|Show]LineAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]LineAttribute.
- HPS::SegmentKey::[Set|Unset|Show]MarkerAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]MarkerAttribute.
- HPS::SegmentKey::[Set|Unset|Show]NURBSSurfaceAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]NURBSSurfaceAttribute.
- HPS::SegmentKey::[Set|Unset|Show]SphereAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]SphereAttribute.
- HPS::SegmentKey::[Set|Unset|Show]TextAttributes functions have been renamed to HPS::SegmentKey::[Set|Unset|Show]TextAttribute.
- HPS::UpdateOptionsControl::SetUpdateControl function has been renamed to HPS::UpdateOptionsControl::UpdateType.
- HPS::[Canvas|Layout|View|Model]::Update(Sprocket::UpdateType::Synchronous) function has been superseded by [Canvas|Layout|View|Model]::UpdateWithNotifier().Wait().
Some conditions had overloaded nomenclature that could be confusing. The new approach disambiguates conditional expressions from the conditions (strings) which can be used to satisfy them.
- HPS::Condition has been renamed to HPS::ConditionalExpression.
- HPS::ConditionArray has been renamed to HPS::ConditionalExpressionArray.
Visualize HPS 2015 Service Pack 2 Update 2
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 Service Pack 2 | | | | | | |
HOOPS Publish | 2015 Service Pack 2 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
RealDWG | 2016 | | | | | | Only supported with Visual Studio 2012 |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2015 | | | | | | |
wxWidgets | 3.0 | | | | | | |
HOOPS Visualize 2015 Service Pack 2 Update 2 is a bug-fix release only.
Visualize HPS 2015 Service Pack 2 Update 1
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 Service Pack 2 | | | | | | |
HOOPS Publish | 2015 Service Pack 2 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
RealDWG | 2016 | | | | | | Only supported with Visual Studio 2012 |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2015 | | | | | | |
wxWidgets | 3.0 | | | | | | |
Enhancements
- Improved the performance and interactivity of highlighting and isolating geometry.
- Reduced flickering in fixed-framerate mode.
- Improved the performance of D3D image and offscreen rendering.
Functional Changes
- Support for user-defined shaders has been removed.
Visualize HPS 2015 Service Pack 2
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 Service Pack 2 | | | | | | |
HOOPS Publish | 2015 Service Pack 2 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
RealDWG | 2016 | | | | | | Only supported with Visual Studio 2012 |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2015 | | | | | | |
wxWidgets | 3.0 | | | | | | |
Enhancements
Functional Changes
-
The android_sandbox project, which was based on Eclipse, has been renamed to android_eclipse_sandbox. android_sandbox still exists, but it is now an Android Studio project.
-
The HPS::TouchEvent::SetTouches method has been removed. Touches can now be set using the regular assignment operator.
Visualize HPS 2015 Service Pack 1 Update 3
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 Service Pack 2 | | | | | | |
HOOPS Publish | 2015 Service Pack 2 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2015 | | | | | | |
wxWidgets | 3.0 | | | | | | |
Functional Changes
-
The Exchange interface has been updated to HOOPS Exchange SP2.
-
The Translate functions in Exchange have changed. They now take a HPS::TranslationOptionsKit argument, which allows the user to specify additional translation options.
Visualize HPS 2015 Service Pack 1 Update 2
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 Service Pack 1 | | | | | | |
HOOPS Publish | 2015 Service Pack 1 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2015 | | | | | | |
wxWidgets | 3.0 | | | | | | |
Improvements
-
Improved the performance and interactivity of highlighting and isolating geometry.
-
Reduced flickering in fixed-framerate mode.
-
Improved the performance of D3D image and offscreen rendering.
Visualize HPS 2015 Service Pack 1 Update 1
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 Service Pack 1 | | | | | | |
HOOPS Publish | 2015 Service Pack 1 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2015 | | | | | | |
wxWidgets | 3.0 | | | | | | |
Functional changes
-
A bug has been fixed in our license validation
Visualize HPS 2015 Service Pack 1
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 Service Pack 1 | | | | | | |
HOOPS Publish | 2015 Service Pack 1 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2015 | | | | | | |
wxWidgets | 3.0 | | | | | | |
New features and enhancements
Functional changes
-
The HPS::Publish::AnnotationKit::ShowSource function has changed to accommodate exporting subtrees. It can now return either a SprocketPath or a KeyPathArray, together with an enum telling the user which of the two return values is valid. This breaks compatibility with previous versions of HPS, so if you were previously using the HPS::Publish::AnnotationKit::ShowSource function, you will need to change your code for it to work with this version of HOOPS Visualize.
-
Exporting of HPS::Stream files now happens asynchronously. The export now works very much like the import functions, in that it returns a notifier which can be used to check the progress or cancel the export. If you require the old export behavior, you can use a HPS::Stream::ExportNotifier and call Wait(). See section "Exporting Files" in the Programming Guide.
-
The "ImportTime" and "ParseTime" metadata that was present on the CADModel have been removed and replaced with GetImportTime and GetParseTime on the HPS::Exchange::ImportNotifier. This change was also made to Parasolid CAD models and HPS::Parasolid::ImportNotifier for consistency.
-
The HPS::Exchange::TranslationNotifier::GetModelLoadTime function was renamed to GetImportTime, and additionally the (new) GetImportTime and (existing) GetTranslationTime functions on the TranslationNotifier have been changed to return time in milliseconds, not seconds.
-
The behavior of HPS::Component::Delete has changed. Previously, calling HPS::Component::Delete would delete all the underlying subcomponents, even if they had multiple owners. Now, if HPS::Component::Delete is invoked on a component which has subcomponents with multiple owners, it will merely remove that single owner, leaving that multiply-owned subcomponent intact. However, if a subcomponent only has one owner it will be deleted if its owner is deleted.
-
Object space selection methods on the Database are deprecated and will be removed in the next major release (Visualize 2016). Use the variants from the HPS::SelectionControl instead.
Visualize HPS 2015 Update 1
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 Service Pack 1 | | | | | | |
HOOPS Publish | 2015 Service Pack 1 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2015 | | | | | | |
wxWidgets | 3.0 | | | | | | |
Visualize HPS 2015
Library compatibility information:
Library name | Version | Windows | Linux | OS X | Android | iOS | Notes |
HOOPS Exchange | 2015 | | | | | | |
HOOPS Publish | 2015 | | | | | | |
.NET Framework | 4.0 | | | | | | 4.5 required when using D3D_IMAGE_CANVAS |
Parasolid | 27 | | | | | | |
Qt | 5.3 | | | | | | Visual Studio 2012 uses Qt 5.1 |
SketchUp | 2014 | | | | | | |
wxWidgets | 3.0 | | | | | | |
New features and enhancements