Data API Changelog
Version 2024.0.0
New APIs
-
-
Add
StandardMaterial.diffuse_gradient_ramp
andStandardMaterial.velvet_gradient_ramp
propertiesAdd
MultiLayerMaterialDiffuseLayer.gradient_ramp
andMultiLayerMaterialIlluminationLayer.gradient_ramp
properties.Add
MirrorMaterial
new methods and attributes.
Version 2023.0.0
New APIs
-
Add
Camera.exposed_in_configuration
,Camera.lens_shift_x
andCamera.lens_shift_y
attribute.
Corrections
Fixed
SceneObject.list_child_objects()
whenrecursive=True
also returning the current object when it shouldn't.
Version 2022.0.1
New APIs
Add SceneObjectKinematics
Add Bezier Path
Add SceneObject which groups Surface,
SceneObjectKinematics
and Bezier PathAdd PositionLayer
Add Timeline and Timeline
Add Animation
Add tags in Surface
Breaking Changes
Changed Surface transform properties, contrary to the previous version setting transformations do not keep the surface global position:
Surface.translation
,Surface.rotation
are now the transform from local to worldRemoved
Surface.pivot_global_position
andSurface.pivot_global_orientation
Added
Surface.pivot_to_world_translation
bySurface.pivot_to_world_rotation
Removed
Surface.pivot_local_position
andSurface.pivot_local_orientation
Added
Surface.local_to_pivot_translation
,Surface.local_to_pivot_rotation
Added
Surface.pivot_to_parent_translation
,Surface.pivot_to_parent_rotation
Removed prefix 'get_' for scripting methods:
Modified in
AspectLayer
:AspectLayer.materialAssignmentOffsetU()
,AspectLayer.materialAssignmentOffsetV()
,AspectLayer.materialAssignmentRotation()
,AspectLayer.materialAssignment()
Modified in
ConfigurationParameter
:ConfigurationParameter.symbol()
Modified in
Database
:Database.objectMetadataValue()
,Database.objectMetadataStore()
Modified in
EnvironmentLayer
:EnvironmentLayer.environmentAssignment()
,EnvironmentLayer.globalEnvironment()
Modified in
Surface
shadow methods:Surface.shadow_cast()
,Surface.receive_shadow()
Modified in
Surface
dressing methods:Surface.dressingMappingMode()
,Surface.dressingScaleUV()
,Surface.dressingLocalTranslation()
,Surface.dressingLocalOrientation()
,Surface.dressingSize()
,Surface.dressingTile()
Version 2022.0.0
New APIs
-
Add
Database.create_configuration_rule()
,Database.find_configuration_rule()
andDatabase.list_configuration_rules()
methods.Add
Database.export_kdr()
andDatabase.export_kdc()
methods.Add
Database.active_model
attribute.
-
Add
Model.list_configuration_parameters()
,Model.list_configuration_presets()
, andModel.create_configuration_preset()
methods.Add
Model.selected_surfaces
andModel.leader_surface
properties.
Configuration:
Add
ConfigurationParameter
class.Add
ConfigurationPreset
class.Add
ConfigurationRule
class.Add
ConfigurationTarget
class.
-
Add
Surface.selected
property.Add
Surface.get_shadow_cast()
,Surface.set_shadow_cast()
,Surface.get_shadow_receive()
andSurface.set_shadow_receive()
methods.
-
Add
AspectLayer.locked
property.Add
AspectLayer.get_material_assignment_offset_u()
,AspectLayer.set_material_assignment_offset_u()
,AspectLayer.get_material_assignment_offset_v()
,AspectLayer.set_material_assignment_offset_v()
,AspectLayer.get_material_assignment_rotation()
andAspectLayer.set_material_assignment_rotation()
, methods.
LightingColor
: AddLightingColor.active
property.Environment Group: Add
EnvironmentGroup.import_kev()
method to import an environment from .kev file.Environment: Add
Environment.export_kev()
method to export an environment to .kev file.
Changed APIs
The
VisibilityLayer
class is now calledGeometryLayer
to be consistent with Patchwork 3D concepts. All properties and methods referencing geometry layers have been renamed accordingly.AspectLayer.visibility
has been renamed toAspectLayer.visible
.AspectLayerGroup.visibility
has been renamed toAspectLayerGroup.visible
.
Corrections
Fix crash when creating a
Camera
without specifying aCameraGroup
.
Version 2021.1.3
Corrections
Fix
LightGroup.list_lights()
not returning the right light type.Fix enums returning wrong values in some cases when using the direct .p3d access API.
Fix crash when creating a
Camera
while in Matter with no product open.Fix exception when duplicating a
MaterialGroup
.
Version 2021.1.0
New APIs
AxfCPA2Material
: Add properties to change the material color.Product
: Add properties for SSAO.Visibility Layer: Add
VisibilityLayer.import_triangle_mesh()
andVisibilityLayer.import_indexed_triangle_mesh()
to create surfaces from meshes.
Corrections
Fix some methods not using their arguments properly.
Version 2020.2.4
Corrections
Fix
AspectLayer.get_material_assignment
not returning the right material type.
Version 2020.2.2
New APIs
Aspect Layer Group: Add
AspectLayerGroup
class.Aspect Layer: Add
AspectLayer
class. This allows you to assign materials to surfaces or query the material of a surface.Environment Layer: Add
EnvironmentLayer
class. This allows you to assign environments to surfaces or change the global environment of the product.Model: Add
Model.create_product()
,Model.find_product()
andModel.list_products()
methods.
Corrections
Fix
Database.active_material
not returning the right material type.Fix crash when setting
Database.active_material
.Fix no default model, visibility layer and lighting created when creating a database using
P3DFile.create()
.
Version 2020.2.1
New APIs
-
Add
Database.active_material
,Database.active_background
,Database.active_environment
,Database.active_overlay
,Database.active_postprocess
andDatabase.active_sensor
attributes.Add
Database.active_texture_group
,Database.active_background_group
,Database.active_environment_group
,Database.active_overlay_group
,Database.active_postprocess_group
andDatabase.active_sensor_group
attributes.Add
Database.create_texture_group()
,Database.find_texture_group()
andDatabase.list_texture_groups()
methods.Add
Database.create_background_group()
,Database.find_background_group()
andDatabase.list_background_groups()
methods.Add
Database.create_environment_group()
,Database.find_environment_group()
andDatabase.list_environment_groups()
methods.Add
Database.create_overlay_group()
,Database.find_overlay_group()
andDatabase.list_overlay_groups()
methods.Add
Database.create_postprocess_group()
,Database.find_postprocess_group()
andDatabase.list_postprocess_groups()
methods.Add
Database.create_sensor_group()
,Database.find_sensor_group()
andDatabase.list_sensor_groups()
methods.
Background Group: Add
BackgroundGroup
class.Background: Add
Background
class.Camera: Add
Camera.sensor
attribute.Material: Add
StandardMaterial.diffuse_gradient_ramp_enabled
,StandardMaterial.velvet_gradient_ramp_enabled
,MultiLayerMaterialDiffuseLayer.gradient_ramp_enabled
andMultiLayerMaterialIlluminationLayer.gradient_ramp_enabled
properties.Environment Group: Add
EnvironmentGroup
class.Environment: Add
Environment
class.Overlay Group: Add
OverlayGroup
class.Overlay: Add
Overlay
andOverlayLayer
classes.Postprocess Group: Add
PostprocessGroup
class.-
Add
Postprocess
class.Add
PostprocessingEffect
base class with some subclasses (more to come):PostprocessingEffectBloom
andPostprocessingEffectBlur
.
Sensor Group: Add
SensorGroup
class.
Corrections
Fix crash when setting
Database.active_material_group
toNone
.
Version 2020.2.0
New APIs
-
Add
MaterialGroup.import_kmt()
method to import a material from .kmt file.Add material creation methods:
MaterialGroup.create_standard_material()
,MaterialGroup.create_multi_layer_material()
,MaterialGroup.create_mirror_material()
,MaterialGroup.create_matte_material()
andMaterialGroup.create_env_material()
.
-
Add
Material.duplicate()
andMaterial.remove()
methods.Add
Material.export_kmt()
method to export a material to .kmt file.Add
FlakesDistribution
,LabelMode
,RepetitionMode
andStandardMaterialType
enums.Add
MultiLayerMaterialLayer
base class with its subclasses:MultiLayerMaterialDiffuseLayer
,MultiLayerMaterialFlakesLayer
,MultiLayerMaterialIlluminationLayer
andMultiLayerMaterialSpecularLayer
.Add material-specific methods to get/set 1 their properties. Currently it is not possible to get/set material gradients, this will come in a future release.
-
Add
TextureGroup
class.Textures can be imported using
TextureGroup.import_from_encoded_data()
.
-
Add
Texture
class.The texture data can be retrieved (in encoded format only currently) using the
Texture.encoded_data()
method.
Corrections
Fix crash when creating a visibility layer
Fix creating a visibility layer not working properly when using
P3DFile
API.Fix wrong database version after saving a file opened with
P3DFile
API.Fix no default groups created in Matter library when creating a database using
P3DFile.create()
.
Version 2020.1.0
Initial release
Footnotes
- 1
Except
SeamMaterial
where it is not possible to set the properties as it is a deprecated material.