|
| | Scene () |
| | Constructs an invalid Scene object with no backing data.
|
| | Scene (const File &file, DesignObjectBase *base=nullptr) |
| | Constructs a new Scene associated with the given file.
|
| | Scene (const Model &model) |
| | Constructs a Scene by explicitly converting from a Model.
|
|
| Scene (const String &file, DesignObjectBase *base=nullptr)=delete |
| | Deleted to prevent implicit String-to-File conversion.
|
| | Scene (const TranslatedString &name, DesignObjectBase *base=nullptr) |
| | Constructs a new Scene with the given display name.
|
| | Scene (DesignObjectBase *base) |
| | Constructs a Scene that wraps an existing DesignObjectBase.
|
| | Scene (uint04 idx, DesignObjectBase *base) |
| | Constructs a Scene referencing an existing object by index within a DesignObjectBase.
|
| Buffer< UUID > | allObjectIDs (bool include_deleted) const |
| | Collects the UUIDs of all objects in this Scene.
|
| void | cleanupMemory () |
| | Releases unused memory held by this Scene's underlying data structures.
|
| void | createDefaultMaterial () |
| | Creates the default Material for this Scene if one does not already exist.
|
| void | deleteBase () const |
| | Deletes the underlying DesignObjectBase, freeing all associated data.
|
| Model | findLayerByName (const StringView &name, bool allow_deleted=false) const |
| | Searches for a layer by name within this Scene.
|
| Model | findLayerByName (const TranslatedString &name, bool allow_deleted=false) const |
| | Searches for a layer by translated name within this Scene.
|
| bool | hasVertexColumn (const StringView &name) const |
| | Checks whether any Geometry in this Scene has a vertex column with the given name.
|
| bool | hasVertexColumn (VertexProperty property) const |
| | Checks whether any Geometry in this Scene has a vertex column for the given property.
|
| bool | hasVertexIndexColumn () const |
| | Checks whether any Geometry in this Scene has a vertex index column.
|
| bool | isApplicationOwned () const |
| | Checks whether this Scene is owned by the application (as opposed to user-created).
|
| void | iterateAll (SceneIterator &iterator) |
| | Iterates over all objects in this Scene, calling the appropriate callback on the iterator.
|
| TableColumn & | vertexColumn (const StringView &name) |
| | Retrieves a mutable reference to the vertex column with the given name.
|
| const TableColumn & | vertexColumn (const StringView &name) const |
| | Retrieves a const reference to the vertex column with the given name.
|
| const TableColumn & | vertexColumn (VertexProperty property) const |
| | Retrieves a const reference to the vertex column for the given property.
|
| const TableColumn & | vertexIndexColumn () const |
| | Retrieves a const reference to the vertex index column.
|
|
| Model () |
| | Default constructor. Creates an uninitialized Model.
|
| | Model (const DesignInfo &obj) |
| | Constructs a Model from an existing DesignInfo descriptor.
|
| | Model (DesignObjectBase *base) |
| | Constructs a Model from a design object base, using the next available index.
|
| | Model (uint04 index, DesignObjectBase *base) |
| | Constructs a Model at a specific index within the design object base.
|
| void | addChild (Model &child) |
| | Adds an existing model as a child of this model.
|
| void | addChild (uint04 child_idx, Model &child) |
| | Adds an existing model as a child at a specific index.
|
| void | addChild (uint04 child_index) |
| | Adds a child by its database index.
|
| void | addPerVertexColorFromMaterialConstant (UVType constant_index) |
| | Adds per-vertex color data derived from a material constant UV channel.
|
| Matrix< fltp08 > | applyTransformToParent (Matrix< fltp08 > mat, const Matrix< fltp08 > &parent_mat) const |
| | Applies a transformation matrix to the parent transform, respecting parent matrix flags.
|
| Vector< 3, fltp08 > | calculateAverageDirection (const Matrix< fltp08 > &parent_transform=Constant< Matrix< fltp08 > >::Invalid) const |
| | Calculates the average direction vector of descendant linear geometries.
|
| Vector< 2, fltp08 > | calculateHVLength (const Matrix< fltp08 > &parent_transform=Constant< Matrix< fltp08 > >::Invalid) const |
| | Calculates horizontal and vertical length components of descendant linear geometries.
|
|
void | calculateIndexNeighborList () |
| | Calculates the index neighbor list for geometry processing.
|
| fltp08 | calculateLength (const Matrix< fltp08 > &transform=Constant< Matrix< fltp08 > >::Invalid) const |
| | Calculates the total length of all descendant linear geometries.
|
| void | calculateNormals (NormalMode mode, Angle< fltp08 > smoothing_angle) |
| | Recalculates normals for all descendant geometries.
|
| void | calculateSmoothTextures (Vector< 3, fltp08 > origin, fltp08 scale) |
| | Calculates smooth texture coordinates based on a projection origin and scale.
|
| fltp08 | calculateSurfaceArea (const Matrix< fltp08 > &transform=Constant< Matrix< fltp08 > >::Invalid) const |
| | Calculates the surface area of all descendant mesh geometries.
|
| void | calculateTangentSpace (bool calc_tan, bool calc_bitan) |
| | Calculates tangent and/or bitangent vectors for all descendant geometries.
|
| fltp08 | calculateVolume (const Matrix< fltp08 > &transform=Constant< Matrix< fltp08 > >::Invalid) const |
| | Calculates the volume of all descendant mesh geometries.
|
| Vector< 2, fltp08 > | calculateVolumeAndSurfaceArea (const Matrix< fltp08 > &transform=Constant< Matrix< fltp08 > >::Invalid, const void *lock=nullptr) const |
| | Calculates both volume and surface area in a single pass for efficiency.
|
| bool | canExplode () const |
| | Checks whether this model can be exploded into its constituent children.
|
| bool | canInteract () const |
| | Checks whether this model can be interacted with (visible, not locked, etc.).
|
| Vertex< 3, fltp08 > | centerAlignModel () |
| | Centers the model geometry at the origin and returns the offset applied.
|
|
void | checkBounds () |
| | Validates and recalculates cached bounding boxes if needed.
|
| uint04 | childCount () const |
| | Returns the number of direct children this model has.
|
|
void | clearChildren () |
| | Removes all children from this model without deleting them.
|
|
void | clearLayer () |
| | Removes the layer assignment from this model.
|
|
void | clearMaterial () |
| | Removes the material assignment from this model.
|
|
void | clearMaterialDescendants () |
| | Removes all descendant material assignments without deleting the materials.
|
| void | colorByChannel (Material &mat, const StringView &channel, fltp08 avg=Constant< fltp08 >::Invalid) const |
| | Colors geometry vertices by a data channel value from a material.
|
| void | copyFrom (const Model &model, bool deep_copy, bool copy_ids=false, bool recursive=true, bool keep_root_properties=false) |
| | Copies data from another model into this model.
|
| void | copyMaterialProperties (const Model &model) |
| | Copies material properties from another model to this model.
|
| Model | createChild () |
| | Creates a new child model and appends it to this model's child list.
|
| Model | createChild (uint04 child_slot) |
| | Creates a new child model at a specific child slot index.
|
| Effect | createChildEffect () |
| | Creates a new child effect attached to this model.
|
| Geometry | createChildGeometry () |
| | Creates a new child geometry for this model.
|
| Material | createChildMaterial (bool copy_child=false) |
| | Creates a new child material for this model.
|
| void | createChildren (uint04 child_size) |
| | Creates multiple children at once.
|
| Effect | createSceneEffect () const |
| | Creates a new effect in the scene database.
|
| Geometry | createSceneGeometry () const |
| | Creates a new geometry in the scene database.
|
| Model | createSceneLayer () const |
| | Creates a new layer model in the scene database.
|
| Material | createSceneMaterial () const |
| | Creates a new material in the scene database.
|
| Model | createSceneModel () const |
| | Creates a new model in the scene database associated with this model.
|
| RGBColor | customModelColor (ModelColorMode mode) const |
| | Returns the resolved model color based on the specified color mode.
|
|
void | deleteChildren () |
| | Deletes all children of this model.
|
| void | deleteModel (bool deletchildren, bool removfrom_parent=true) |
| | Deletes this model from the scene.
|
| BitFlag | descendedFlagsNoCache (bool complete_cache_ignore) const |
| | Computes descended flags without using the cache.
|
| BitFlag | descendedPersonalFlagsNoCache () const |
| | Computes descended personal flags without using the cache.
|
| void | descendentGeometryTypes (Set< GeometryType > &buffer) const |
| | Collects all unique geometry types from descendants into the provided set.
|
| Model | directLayer () const |
| | Returns the directly assigned layer model.
|
| TranslatedString | displayName () const |
| | Returns the translated display name for this model.
|
| TranslatedString | displayNamePath (const StringView &seperator=":") const |
| | Returns the full display name path from root to this model.
|
| bool | doesModelPropertyContain (NDPN property, const char *value, bool ignorcase) const |
| | Checks whether a model property contains a given C-string substring.
|
| template<class t_type> |
| bool | doesModelPropertyContain (NDPN property, const StringView &value, bool ignorcase) const |
| | Checks whether a model property contains a given substring.
|
| void | ensureTangentSpace (bool ensure_tan, bool ensure_bitan) |
| | Ensures that tangent and/or bitangent data exists, calculating if needed.
|
| void | ensureVisibleChildren (uint04 count) |
| | Hides children whos child index is greater than size, or creates/shows children if needed such that there is exactly a given number of visible children for this model.
|
|
void | eraseModel () |
| | Erases this model from the database without removing children.
|
| ModelBuffer | explodeModel () |
| | Explodes this model, promoting its children to siblings in the parent.
|
| bool | exportIgnored () const |
| | Checks whether this model is excluded from export operations.
|
| Model | findDescendentByName (const StringView &name) const |
| | Recursively searches descendants for a model with the given name.
|
| Model | findDescendentByType (const StringView &type) const |
| | Recursively searches descendants for a model with the given type.
|
| Time | getAscModifiedTime (bool include_self, bool include_layer=true) const |
| | Returns the greatest modified time of this model and all ancestors.
|
| Bounds< 3, fltp08 > | getBounds () const |
| | Returns the local bounding box of this model.
|
| Bounds< 3, fltp08 > | getBoundsOfVisible () const |
| | Returns the bounding box of all visible descendants.
|
| Model | getChild (uint04 child) const |
| | Returns the child model at the given child slot index.
|
| Model | getChild (UUID id) const |
| | Returns the child model with the specified UUID.
|
| uint04 | getChildIndex () const |
| | Returns this model's index within its parent's child list.
|
| uint04 | getChildIndex (uint04 child) const |
| | Returns the database index of the child at the given slot.
|
| Buffer< uint04 > | getChildIndices () const |
| | Returns the database indices of all direct children.
|
| uint04 | getChildLayerIndex () const |
| | Returns this model's index within its parent's layer child list.
|
| ModelBuffer | getChildren () const |
| | Returns a buffer containing all direct children of this model.
|
| void | getChildren (ModelBuffer &children) const |
| | Appends all direct children of this model to the provided buffer.
|
| ModelBuffer | getChildrenByName (const StringView &name) const |
| | Returns all direct children whose name matches the given string.
|
| ModelBuffer | getChildrenByType (const Buffer< String > &type) const |
| | Returns all direct children whose type matches any of the given strings.
|
| ModelBuffer | getChildrenByType (const StringView &type) const |
| | Returns all direct children whose type matches the given string.
|
| Buffer< UUID > | getChildrenIDs () const |
| | Returns the UUIDs of all direct children.
|
| PrimitiveAlignedBuffer< std::pair< Model, Geometry >, 32 > | getClippingGeometry () const |
| | Returns model-geometry pairs used for clipping operations.
|
| Matrix< fltp08 > | getCompleteTransform () const |
| | Returns the fully composed local-to-global transform matrix for this model.
|
| ModelBuffer | getDescendants (bool include_deleted=false, bool local_only=false) const |
| | Returns all descendant models recursively.
|
| void | getDescendants (ModelBuffer &buffer, bool include_deleted=false, bool local_only=false) const |
| | Appends all descendant models recursively to the provided buffer.
|
| ModelBuffer | getDescendantsByName (const StringView &name, uint04 max_count=Constant< uint04 >::Max) const |
| | Recursively searches all descendants for models matching the given name.
|
| ModelBuffer | getDescendantsByNameAndType (const StringView &name, const StringView &type, uint04 max_count=Constant< uint04 >::Max) const |
| | Recursively searches all descendants for models matching both name and type.
|
| ModelBuffer | getDescendantsByType (const StringView &type, uint04 max_count=Constant< uint04 >::Max) const |
| | Recursively searches all descendants for models matching the given type.
|
| Time | getDescModifiedTime (bool includself) const |
| | Returns the greatest modified time of this model and all descendants.
|
| uint04 | getDirectLayerIndex () const |
| | Returns the database index of the directly assigned layer.
|
| Effect | getEffect (uint04 index=0) const |
| | Returns the effect at the specified child index.
|
| EffectBuffer | getEffectChildren () const |
| | Returns all direct child effects of this model.
|
| EffectBuffer | getEffectDescendants () const |
| | Returns all descendant effects recursively.
|
| uint04 | getEffectIndex (uint04 child_index=0) const |
| | Returns the database index of the effect at the given child slot.
|
| Model | getFamilyMember (uint04 index) const |
| | Returns a model from the family tree (ancestors + descendants) by flat index.
|
| Geometry | getGeometry () const |
| | Returns the geometry attached to this model.
|
| GeometryBuffer | getGeometryDescendants (bool remove_redundant=true, uint04 max_count=Constant< uint04 >::Max) const |
| | Recursively collects all descendant geometries.
|
| uint04 | getGeometryIndex () const |
| | Returns the database index of the geometry associated with this model.
|
| Model | getLayer () const |
| | Returns the layer model assigned to this model (direct or inherited).
|
| Material | getMaterial () const |
| | Returns the material assigned to this model.
|
| MaterialBuffer | getMaterialDescendants (bool local_only=false) const |
| | Recursively collects all descendant materials.
|
| void | getMaterialDescendants (MaterialBuffer &materials, bool local_only=false) const |
| | Appends all descendant materials to the provided buffer.
|
| void | getMaterialDescendants (Set< Material > &materials, bool local_only=false) const |
| | Appends all descendant materials to the provided set (deduplicating).
|
| MaterialBuffer | getMaterialDescendantsByName (const StringView &name, uint04 max_count=Constant< uint04 >::Max) const |
| | Returns descendant materials filtered by name.
|
| uint04 | getMaterialIdx () const |
| | Returns the database index of the material assigned to this model.
|
| MaterialMode | getMaterialMode () const |
| | Returns the material mode determining how materials are resolved for this model.
|
| StringView | getModelIcon () const |
| | Returns the icon identifier string for this model's type.
|
| uint04 | getNumOfEffects () const |
| | Returns the number of effects attached to this model.
|
| Model | getParent () const |
| | Returns the parent model of this model.
|
| uint04 | getParentIndex () const |
| | Returns the database index of this model's parent.
|
| Matrix< fltp08 > | getParentTransform () const |
| | Returns the parent's transformation matrix as seen by this model.
|
| Model | getRoot () const |
| | Returns the root ancestor of this model's hierarchy.
|
| Material | getRootMaterial () const |
| | Returns the root material resolved through the hierarchy.
|
| Model | getRootMaterialModel () |
| | Returns the ancestor model that determines the root material for this model.
|
| Effect | getSceneEffect (UUID id) const |
| | Returns a scene effect by its UUID.
|
| EffectBuffer | getSceneEffects () const |
| | Returns all effects in the scene database.
|
| GeometryBuffer | getSceneGeometries () const |
| | Returns all geometries in the scene database.
|
| Geometry | getSceneGeometry (uint04 index) const |
| | Returns a scene geometry by database index.
|
| Geometry | getSceneGeometry (UUID id) const |
| | Returns a scene geometry by UUID.
|
| Model | getSceneLayer (UUID id) const |
| | Returns a scene layer by its UUID.
|
| ModelBuffer | getSceneLayers (bool include_deleted=false) const |
| | Returns all layer models in the scene.
|
| Material | getSceneMaterial (uint04 index) const |
| | Returns a scene material by database index.
|
| Material | getSceneMaterial (UUID id) const |
| | Returns a scene material by UUID.
|
| MaterialBuffer | getSceneMaterials () const |
| | Returns all materials in the scene database.
|
| Model | getSceneModel (UUID id) const |
| | Retrieves a scene model by its UUID.
|
| ModelBuffer | getSceneModels (bool include_deleted=false, bool local_only=false) const |
| | Returns all models in the scene database.
|
| ModelBuffer | getSceneModelsByName (const StringView &name, uint04 max_count=Constant< uint04 >::Max, bool includdeleted=false) const |
| | Returns scene models filtered by name.
|
| ModelBuffer | getSceneModelsByType (const StringView &type, uint04 max_count=Constant< uint04 >::Max, bool includdeleted=false) const |
| | Returns scene models filtered by type.
|
| Bounds< 3, fltp08 > | getSelectionBounds () const |
| | Returns the selection-specific bounding box in local space.
|
| template<class t_type> |
| Buffer< t_type > | getTypeChildren (const StringView &type) const |
| | Returns children of a specific type, cast to the requested derived type.
|
| template<class t_type> |
| Buffer< t_type > | getTypeDescendants (const StringView &type) const |
| | Recursively searches descendants for models of a specific type, cast to a derived type.
|
| Bounds< 3, fltp08 > | globalBounds () const |
| | Returns the global bounding box of this model (including transform).
|
| Vertex< 3, fltp08 > | globalCenterOfRotation () const |
| | Returns the center of rotation in global coordinates.
|
| Bounds< 3, fltp08 > | globalSelectionBounds () const |
| | Returns the global selection bounding box.
|
| bool | hasChild (uint04 child_index=0U) const |
| | Checks whether this model has a child at the given slot.
|
| void | hasDescendants (bool &has_point, bool &has_line, bool &has_mesh, bool only_user_objects) const |
| | Checks which types of geometry primitives exist among descendants.
|
| bool | hasDescendent (const Model &model) const |
| | Checks whether a given model is a descendant of this model.
|
| bool | hasDescendent (const UUID &id) const |
| | Checks whether a model with the given UUID is a descendant of this model.
|
| bool | hasDirectLayer () const |
| | Checks whether this model has a directly assigned layer (not inherited).
|
| bool | hasEffect (uint04 index=0) const |
| | Checks whether an effect exists at the given child index.
|
| bool | hasFocus () const |
| | Checks whether this model currently has focus.
|
| bool | hasGeometryDescendent () const |
| | Checks whether any descendant has geometry data.
|
| bool | hasHoles (PrimitiveProperty property) const |
| | Checks whether the geometry has holes (missing primitives) for a given property.
|
| bool | hasLayer () const |
| | Checks whether this model has a layer (directly or inherited).
|
| bool | hasLayerRootMaterial () const |
| | Checks whether a root material exists through the layer hierarchy.
|
| bool | hasLinearDescendent () const |
| | Checks whether any descendant has linear (line/polyline) geometry.
|
| bool | hasMaterial () const |
| | Checks whether this model has a material assigned.
|
| bool | hasMeshDescendent () const |
| | Checks whether any descendant has mesh (triangle) geometry.
|
| bool | hasPointsDescendent () const |
| | Checks whether any descendant has point geometry.
|
| bool | hasRootMaterial () const |
| | Checks whether a root material can be resolved through the hierarchy.
|
| bool | hasSelectedDescendent () const |
| | Checks whether any descendant of this model is selected.
|
| Vector< 32, bool > | inheritedFlags () const |
| | Returns the cached inherited flags vector for this model.
|
| Vector< 32, bool > | inheritedFlagsNoCache (bool complete_cache_ignore) const |
| | Computes inherited flags without using the cache.
|
| Vector< 32, bool > | inheritedPersonalFlagsNoCache () const |
| | Computes inherited personal flags without using the cache.
|
|
void | invalidateBounds () |
| | Invalidates all cached bounding boxes, forcing recalculation on next access.
|
|
void | invalidateGlobalBoundsDesc () |
| | Invalidates global bounding boxes for this model and all descendants.
|
|
void | invalidateSelectionBounds () |
| | Invalidates the cached selection bounding box.
|
|
void | invalidateTransformCache () |
| | Invalidates the cached transformation matrix, forcing recomputation.
|
|
void | invalidateVisibleBounds () |
| | Invalidates the cached visible bounding box.
|
| bool | isApplicationOwned () const |
| | Checks whether this model is owned by the application (not user-created).
|
| bool | isDeleted () const |
| | Checks whether this model has been deleted.
|
| bool | isLayer () const |
| | Checks whether this model is a layer definition.
|
| bool | isLocked () const |
| | Checks whether this model is locked against editing.
|
| bool | isScene () const |
| | Checks whether this model represents a scene root node.
|
| bool | isSelected () const |
| | Checks whether this model is currently selected.
|
| bool | isTreeVisible () const |
| | Checks whether this model is visible in the model tree view.
|
| template<class t_buffer_type> |
| bool | isType (const Buffer< t_buffer_type > &types) const |
| | Checks whether the model's type matches any type in the given buffer.
|
| bool | isVisible () const |
| | Checks whether this model is visible (accounting for inherited visibility).
|
|
| operator bool () const |
| | Boolean conversion operator. Returns true if this Model references a valid entry.
|
| void | overrideMaterialDescendants (MaterialMode override_desc) |
| | Overrides material mode for all descendants.
|
| BitFlag | parentMatrixFlags () const |
| | Returns the parent matrix flags for this model.
|
| BitFlag | personalDescendedFlags () const |
| | Returns the cached personal descended flags.
|
| Vector< 32, bool > | personalInheritedFlags () const |
| | Returns the personal inherited flags from the cache.
|
| void | removeChild (const Model &model) |
| | Removes a specific child model from this model's child list.
|
| void | removeDuplicateVertices (fltp08 epsilon, void *lock, InfoPipe *log=nullptr) |
| | Removes duplicate vertices from all descendant geometries.
|
|
void | removeGeometry () |
| | Removes the geometry reference from this model (does not delete the geometry).
|
|
void | removeMaterial () |
| | Removes the material from this model.
|
|
void | restoreModel () |
| | Restores a previously deleted model, re-adding it to the scene.
|
| void | restoreModel (Model &parent, uint04 index=Constant< uint04 >::Invalid) |
| | Restores a previously deleted model under a specific parent.
|
| void | setChildApplicationConstructed (const StringView &database_name=StringView()) |
| | Sets the child database to an application-constructed database by name.
|
| void | setChildApplicationConstructed (DesignObjectBase *base) |
| | Sets the child database to use an application-constructed DesignObjectBase.
|
| void | setChildEffectSize (uint04 child_size) |
| | Sets the number of child effect slots for this model.
|
| void | setChildIndex (uint04 child, uint04 id) |
| | Sets the database index for a specific child slot.
|
| void | setEffectIndex (uint04 material_index, uint04 sub_index=0) |
| | Sets the effect database index at a given sub-index.
|
| void | setGeometryApplicationConstructed (const StringView &database_name=StringView()) |
| | Sets the geometry database to an application-constructed database by name.
|
| void | setGeometryChild (Geometry &geo) |
| | Sets the geometry child of this model to an existing Geometry object.
|
| void | setGeometryIndex (uint04 geo_index) |
| | Sets the geometry database index for this model.
|
| void | setIsLayer (bool is_layer) |
| | Marks or unmarks this model as a layer definition.
|
| void | setLayer (Model layer) |
| | Assigns this model to a specific layer.
|
| void | setMaterial (const Material &material) |
| | Assigns a material to this model.
|
| void | setMaterialApplicationConstructed (const StringView &database_name=StringView()) |
| | Sets the material database to an application-constructed database by name.
|
| void | setMaterialMode (MaterialMode option) |
| | Sets the material mode for this model.
|
| void | setModelTransform (const Matrix< fltp08 > &transform) |
| | Sets the model's local transformation matrix, replacing the current one.
|
| bool | setModelVisible (bool is_visible) |
| | Sets the visibility of this model.
|
| void | setNormalMode (NormalMode mode, Angle< fltp08 > smoothing_angle, InfoPipe *log) |
| | Sets the normal mode and recalculates normals with progress logging.
|
| void | setOrientation (const Vector< 3, Angle< fltp08 > > &new_orientation, const void *lock=nullptr) |
| | Sets the orientation of this model using floating-point angles.
|
| void | setOrientation (const Vector< 3, Angle< sint04 > > &new_orientation, const void *lock=nullptr) |
| | Sets the orientation of this model using integer-precision angles.
|
| void | setParentMatrixFlag (ParentMatrixFlags flag, bool value) |
| | Sets or clears a specific parent matrix flag.
|
| void | setParentMatrixFlags (BitFlag flags) |
| | Sets the parent matrix flags controlling which parent transform components to inherit.
|
| void | setSize (const Vector< 3, fltp08 > &size) |
| | Sets the model size by scaling its transform to match the desired dimensions.
|
| void | setWindingMode (WindingMode mode) |
| | Sets the winding mode for all descendant geometries.
|
| Vector< 3, fltp08 > | size () const |
| | Returns the size (extents) of the model's bounding box.
|
| void | swapChildren (uint04 a, uint04 b) |
| | Swaps the positions of two children in the child list.
|
| void | updateAscGeometryTime (const Time &time, bool include_self) |
| | Updates the geometry-modified timestamp for this model and all ancestors.
|
| void | updateAscTime (const Time &time, bool includself) |
| | Updates the modified timestamp for this model and all ancestors.
|
| void | updateDescGeometryTime (const Time &time, bool include_self) |
| | Updates the geometry-modified timestamp for this model and all descendants.
|
| void | updateDescTime (const Time &time, bool include_self) |
| | Updates the modified timestamp for this model and all descendants.
|
| void | updateFrom (const Model &model, bool check_resources) |
| | Updates this model's properties from another model, optionally checking resources.
|
| void | updateGeometryTime (Time time=Time::SystemTime()) |
| | Updates the geometry-modified timestamp for this model.
|
| void | updateInheritedFlagsCache (bool force_update_all=false, bool update_personal_flags=false) |
| | Recalculates and caches the inherited flags for this model.
|
| void | updateModelTransform (const Matrix< fltp08 > &transform, const void *lock=nullptr) |
| | Applies a delta transform to the current model transform.
|
| void | updateModifiedTime (Time time=Time::SystemTime()) |
| | Updates the modified timestamp for this model.
|
| void | updateVisibleRecursive (bool is_visible) |
| | Recursively updates visibility for this model and all descendants.
|
| void | validate (bool validate_children=true) const |
| | Validates this model's internal state for consistency.
|
| uint04 | vertexCount () const |
| | Returns the total number of vertices across all descendant geometries.
|
| uint04 | visibleVertexCount () const |
| | Returns the total number of visible vertices across all descendant geometries.
|
| | DesignObject ()=default |
| | Creates an "invalid" design object.
|
| | DesignObject (const DesignInfo &info) |
| | Constructs a DesignObject from an existing DesignInfo, sharing the same base and indices.
|
| | DesignObject (DesignObjectBase *base) |
| | Creates an new design object within the given DesignObjectBase.
|
| | DesignObject (uint04 index, DesignObjectBase *base) |
| | Sets a DesignObject up to be a pointer to an existing object in the database.
|
| JSONNode | activeFilters () const |
| | Retrieves the active filters applied to this design object as a JSON structure.
|
| void | appendData (const StringView &data, bool compressed) |
| | Appends data to this design object's data storage.
|
| DesignObjectBase & | base () const |
| | Returns a reference to the underlying DesignObjectBase database.
|
| void | clearAllMetaData () |
| | Removes all metadata entries from this design object.
|
| void | clearMetaData (const StringView &index) |
| | Removes a specific metadata entry by key.
|
| void | copyFrom (const DesignObject &object) |
| | Copies all properties from the given design object into this one.
|
| uint04 | designIndex () const |
| | Returns the design-specific index used to access type-specific properties (e.g., model, geometry, material properties).
|
| bool | doesPropertyBeginWith (NDPO property, const StringView &value, bool ignore_case) const |
| | Checks whether a string property's value begins with the given substring.
|
| bool | doesPropertyContain (NDPO property, const StringView &value, bool ignore_case) const |
| | Checks whether a string property's value contains the given substring.
|
| File | file () const |
| | Returns the file path associated with this design object as a File object.
|
| template<auto t_property> |
| constexpr decltype(auto) | get () const |
| | Retrieves a property value using a compile-time property constant, with the type deduced from PropertySpec.
|
| template<auto t_property, class t_type> |
| constexpr decltype(auto) | get () const |
| | Retrieves a property value using a compile-time property constant, cast to the requested type.
|
| template<class t_type, class t_property_type> |
| constexpr decltype(auto) | get (t_property_type property) const |
| | Retrieves a property value from the database, cast to the requested type.
|
| DesignObject | getDesignParent () const |
| | Retrieves the parent design object of this object in the model hierarchy.
|
| StringView | getIcon () const |
| | Retrieves the icon identifier string associated with this design object.
|
| template<class t_type> |
| decltype(auto) | getInheritedProperty (NDPO property) const |
| | Retrieves a property value, walking up the parent hierarchy if the property is not set on this object.
|
| Scene | getScene () const |
| | Retrieves the Scene that this design object belongs to.
|
| bool | hasMetaData (const StringView &index) const |
| | Checks whether a metadata entry exists for the given key.
|
| template<class t_type, class t_design_type> |
| bool | hasProperty (t_design_type property) const |
| | Checks whether a property has a valid (non-default) value.
|
| uint04 | index () const |
| | Returns the primary row index of this object within the DesignObjectBase property table.
|
| template<auto t_property> |
| bool | is (const char *value) const |
| | Checks whether a compile-time property matches the given C-string value.
|
| template<auto t_property> |
| bool | is (const String &value) const |
| | Checks whether a compile-time property matches the given String value.
|
| template<auto t_property> |
| bool | is (const StringView &value) const |
| | Checks whether a compile-time property matches the given StringView value.
|
| template<auto t_property, class t_type> |
| std::enable_if<!ObjectInfo< t_type >::String, bool >::type | is (const t_type &value) const |
| | Checks whether a compile-time property matches a non-string value using equality comparison.
|
| template<class t_property_type> |
| bool | is (t_property_type property, const char *value) const |
| | Checks whether a string property matches the given C-string value.
|
| template<class t_property_type> |
| bool | is (t_property_type property, const String &value) const |
| | Checks whether a string property matches the given String value.
|
| template<class t_property_type> |
| bool | is (t_property_type property, const StringView &value) const |
| | Checks whether a string property matches the given StringView value.
|
| template<class t_property_type, class t_type> |
| std::enable_if<!ObjectInfo< t_type >::String, bool >::type | is (t_property_type property, const t_type &value) const |
| | Checks whether a non-string property matches the given value using equality comparison.
|
| bool | isDesignType (DesignObjectType mode) const |
| | Checks whether this object has the specified design type flag set.
|
| bool | isDesignType (uint04 mode) const |
| | Checks whether this object has the specified design type flag set, using a raw integer value.
|
| bool | isValid () const |
| | Checks whether this design object has a valid index into the database.
|
| const JSONNode & | metaData () const |
| | Retrieves the entire metadata tree for this design object.
|
| const JSONNode & | metaData (const StringView &index) const |
| | Retrieves a specific metadata entry by key.
|
| void | offsetDesign (const Vector< 3, fltp08 > &offset) |
| | Translates this design object by the given offset vector.
|
| | operator bool () const |
| | Bool conversion operator.
|
| bool | operator!= (const DesignObject &object) const |
| | Checks inequality with another DesignObject.
|
| bool | operator< (const DesignObject &object) const |
| | Less-than comparison for ordering DesignObjects (e.g., for sorted containers).
|
| bool | operator== (const DesignObject &object) const |
| | Checks equality with another DesignObject by comparing base pointers and indices.
|
| bool | operator> (const DesignObject &object) const |
| | Greater-than comparison for ordering DesignObjects (e.g., for sorted containers).
|
| Table & | propertyTable () |
| | Returns a mutable reference to the property table that stores this object's properties.
|
| const Table & | propertyTable () const |
| | Returns a const reference to the property table that stores this object's properties.
|
| void | removeMetaData (const StringView &index, const void *lock_ptr=nullptr) |
| | Removes a metadata entry by key, with optional write lock support.
|
| void | scale (Vector< 3, fltp08 > scale, Vertex< 3, fltp08 > center_of_scale, const Matrix< fltp08 > &transform) |
| | Scales this design object's geometry by the given scale factors around a center point, applying an additional transform.
|
| void | scale (Vector< 3, fltp08 > scale, Vertex< 3, fltp08 > center_of_scale=Constant< Vertex< 3, fltp08 > >::Invalid) |
| | Scales this design object's geometry and transform by the given scale factors around a center point.
|
| template<auto t_property, class t_type> |
| void | set (const t_type &value) |
| | Sets a property value in the database using a compile-time property constant.
|
| template<class t_type, class t_property_type> |
| void | set (t_property_type property, const t_type &value) |
| | Sets a property value in the database.
|
| void | setActiveFilters (const JSONNode &node) |
| | Sets the active filters on this design object from a JSON structure.
|
| void | setDesignType (DesignObjectType mode, bool is_type) |
| | Sets or clears a design type flag on this object.
|
| void | setMetaData (const JSONNode &node) |
| | Replaces the entire metadata tree with the given JSON node.
|
| void | setMetaData (const StringView &index, const bool &data) |
| | Sets a metadata entry at the given key to a boolean value.
|
| void | setMetaData (const StringView &index, const fltp08 &data) |
| | Sets a metadata entry at the given key to a 64-bit floating point value.
|
| void | setMetaData (const StringView &index, const JSONNode &node) |
| | Sets a metadata entry at the given key to the specified JSON node value.
|
| void | setMetaData (const StringView &index, const String &data) |
| | Sets a metadata entry at the given key to a String value.
|
| void | setMetaData (const StringView &index, const StringView &data) |
| | Sets a metadata entry at the given key to a StringView value.
|
| void | setMetaData (const StringView &index, const uint01 &data) |
| | Sets a metadata entry at the given key to a uint01 value.
|
| void | setMetaData (const StringView &index, const uint04 &data) |
| | Sets a metadata entry at the given key to a uint04 value.
|
| template<auto t_property, class t_type> |
| bool | update (const t_type &value, const void *lock=nullptr) |
| | Updates a property using a compile-time property constant, only if the new value differs.
|
| template<class t_type, class t_property_type> |
| bool | update (t_property_type property, const t_type &value, const void *lock=nullptr) |
| | Updates a property only if the new value differs from the current value.
|
| void | updateCreatedTime () |
| | Sets the creation time stamp for this design object to the current system time.
|
| void | updateDesignModifiedTime (Time time=Time::SystemTime()) |
| | Updates the modified time stamp for this design object.
|
| void | updateDesignTransform (const Matrix< fltp08 > &transform, const void *lock=nullptr) |
| | Updates the transform of this design object if it differs from the current value.
|
| bool | updateDesignVisible (bool is_visible, const void *lock=nullptr) |
| | Updates the spatial visibility of this design object if it differs from the current value.
|
| void | updateMetaData (const StringView &index, const bool &data, const void *lock_ptr=nullptr) |
| | Updates a metadata entry only if the new value differs from the current value.
|
| void | updateMetaData (const StringView &index, const fltp08 &data, const void *lock_ptr=nullptr) |
| | Updates a metadata entry only if the new value differs from the current value.
|
| void | updateMetaData (const StringView &index, const String &data, const void *lock_ptr=nullptr) |
| | Updates a metadata entry only if the new value differs from the current value.
|
| void | updateMetaData (const StringView &index, const StringView &data, const void *lock_ptr=nullptr) |
| | Updates a metadata entry only if the new value differs from the current value.
|
| bool | validateDesignObject () const |
| | Validates the internal state of this design object, ensuring indices and base pointer are consistent.
|