![]() |
NDEVR
API Documentation
|
Forward declaration for distance encoder device. More...
Public Member Functions | |
| PositionSensor (const Model &name, LogPtr log, QObject *parent=nullptr) | |
| Constructs a PositionSensor with the given model, log, and optional parent. | |
| virtual void | addDeploymentSegment (fltp08 distance) |
| Adds a deployment segment at the given distance. | |
| void | deploymentChangedSignal (UUID deployment) |
| Emitted when the deployment configuration has changed. | |
| void | deploymentSegmentAddedSignal () |
| Emitted when a deployment segment has been added. | |
| void | deploymentSegmentRemovedSignal () |
| Emitted when a deployment segment has been removed. | |
| virtual DistanceEncoder * | distanceEncoder () const |
| Returns the distance encoder attached to this sensor, if any. | |
| virtual GNSSQuality | gpsQuality () const |
| Returns the current GNSS fix quality. | |
| virtual Vertex< 3, fltp08 > | lastPosition () const |
| Returns the last known 3D position of this sensor. | |
| virtual OrientationSensor * | orientationSensor () const |
| Returns the orientation sensor associated with this position sensor, if any. | |
| virtual void | removeDeploymentSegment (uint04 index=Constant< uint04 >::Invalid) |
| Removes a deployment segment at the given index. | |
| virtual bool | requestDistanceEncoder (DistanceEncoder *) |
| Requests attaching a distance encoder to this position sensor. | |
| virtual bool | requestUsingGPS (bool using_gps) |
| Requests enabling or disabling GPS-based positioning. | |
| virtual Vertex< 3, fltp08 > | sensorLocation () const |
| Returns the physical location of the sensor on the hardware. | |
| virtual void | setAcceleration (const Vector< 3, fltp08 > &acceleration) |
| Sets the current acceleration vector of the sensor. | |
| void | setPosition (const Vertex< 3, fltp08 > &location) |
| Sets the current position of this sensor. | |
| void | setSensorLocation (const Vertex< 3, fltp08 > &location) |
| Sets the physical location of the sensor on the hardware. | |
| virtual void | setVelocity (const Vector< 3, fltp08 > &velocity) |
| Sets the current velocity vector of the sensor. | |
| void | stationChangedSignal (UUID station) |
| Emitted when the station model has changed. | |
| virtual bool | stationUsedForOffset () const |
| Returns whether the station model is used for position offset computation. | |
| virtual Vector< 3, fltp08 > | stdDev () const |
| Returns the standard deviation of position measurements. | |
| void | update (Time time) override |
| Updates the position sensor state for the given time. | |
| virtual bool | usingGPS () const |
| Returns whether GPS-based positioning is currently enabled. | |
| Public Member Functions inherited from Device | |
| Device (const Model &model, LogPtr log, QObject *parent=nullptr) | |
| Constructs a Device from a Model with the given log and optional Qt parent. | |
| LogPtr | deviceLog () const |
| Returns the log associated with this device. | |
| virtual void | endUpdates () |
| Called when the auto-update loop ends, allowing cleanup. | |
| void | onUpdated () |
| Emitted after the device has been updated. | |
| virtual void | setLog (LogPtr log) |
| Sets the log used for device diagnostics. | |
| void | setWarningCallback (const std::function< void(const Exception &warning, LogPtr log)> &warning_callback) |
| Sets a callback to be invoked when a warning is generated by this device. | |
| void | startAutoUpdate (DesignObjectLookup *lookup=nullptr) |
| Starts automatic periodic updating of this device on a background thread. | |
| void | stopAutoUpdate (DesignObjectLookup *lookup=nullptr) |
| Stops automatic periodic updating of this device. | |
| virtual void | update (DesignObjectLookup *lookup, Time time) override |
| Called by the update system to update this device with design context. | |
| virtual TimeSpan | updateInterval () const |
| Returns the time interval between automatic updates. | |
| Public Member Functions inherited from Model | |
| 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. | |
| Public Member Functions inherited from DesignObject | |
| 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. | |
Protected Attributes | |
| Vector< 3, fltp08 > | m_acceleration |
| The current 3D acceleration vector. | |
| Time | m_last_position_time |
| The timestamp of the last position update. | |
| Vertex< 3, fltp08 > | m_position |
| The current 3D position of this sensor. | |
| Vertex< 3, fltp08 > | m_sensor_location |
| The physical location of the sensor on the hardware. | |
| bool | m_using_gps |
| Whether GPS-based positioning is currently enabled. | |
| Vector< 3, fltp08 > | m_velocity |
| The current 3D velocity vector. | |
| Protected Attributes inherited from Device | |
| LogPtr | m_log |
| Log for device diagnostic messages. | |
| DeviceUpdateThread * | m_update_thread = nullptr |
| Background thread for auto-updating this device. | |
| std::function< void(const Exception &warning, LogPtr log)> | m_warning_callback |
| Callback invoked when warnings are generated. | |
| Protected Attributes inherited from DesignInfo | |
| DesignObjectBase * | m_base = nullptr |
| Pointer to the owning DesignObjectBase property database. | |
| uint04 | m_design_index = Constant<uint04>::Invalid |
| Index of the parent design that owns this object. | |
| uint04 | m_index = Constant<uint04>::Invalid |
| Row index of this object within the property database. | |
Additional Inherited Members | |
| Public Types inherited from Model | |
| enum | DescendedFlags { e_descendent_selected = 0 , e_descendent_focussed = 1 , e_descendent_deletion_blocked = 2 } |
| Flags that propagate upward from descendant models to ancestors, indicating aggregate states of the subtree below this model. More... | |
| enum | InheritedFlags : uint01 { e_inherited_is_visible = 0 , e_inherited_has_no_focus = 1 , e_inherited_is_tree_visible = 2 , e_inherited_not_selected = 3 , e_placholder = 4 , e_inherited_can_delete = 5 , e_inherited_does_not_follow_camera = 6 , e_inherited_does_not_orient_to_camera = 7 , e_inherited_does_not_scale_to_camera = 8 , e_inherited_not_deleted = 9 , e_inherited_not_application_owned = 10 , e_inherited_exportable = 11 } |
| Flags that are recursively inherited from ancestor models down through the hierarchy. More... | |
| enum class | MaterialMode { e_by_parent , e_by_layer , e_custom , e_hidden } |
| Determines how a model resolves its material for rendering. More... | |
| enum class | ModelColorMode { e_direct , e_by_selectable_children , e_by_material_root , e_by_layer } |
| Determines how the model color is resolved for display purposes. More... | |
| enum | ParentMatrixFlags : uint01 { e_ignore_offset = 0 , e_ignore_scale = 1 , e_ignore_rotation = 2 , e_ignore_scale_distortion = 3 , e_use_only_for_offset = 4 , e_orient_to_camera = 5 , e_follow_camera = 6 , e_scale_to_camera = 7 } |
| Flags controlling which components of the parent's transformation matrix are applied to this model. More... | |
| Public Types inherited from DesignInfo | |
| enum | DesignObjectType : uint01 |
| Static Public Member Functions inherited from Device | |
| static void | SetDefaultDeviceLookup (DesignObjectLookup *lookup) |
| Sets the default DesignObjectLookup used by all devices when none is specified. | |
| Static Public Member Functions inherited from Model | |
| static ModelBuffer | ReduceToRoots (const ModelBuffer &children, const std::function< bool(const Model &, const Set< Model > &)> &filter) |
| Reduces a collection of models to only root-level models (removing any that are descendants of others in the set), filtered by a user-provided predicate. | |
| Static Public Member Functions inherited from DesignObject | |
| static constexpr StringView | FilePathDesignNameVariable () |
| Returns the placeholder variable string used in file paths to represent the design name. | |
| Protected Member Functions inherited from Device | |
| virtual void | showWarning (const Exception &warning) const |
| Displays a warning exception through the warning callback or log. | |
| virtual void | showWarning (const TranslatedString &warning) const |
| Displays a warning message through the warning callback or log. | |
| Protected Member Functions inherited from Model | |
| DesignObjectBase * | childBase () const |
| Returns the DesignObjectBase used for child model storage. | |
| ColumnT< uint04 > & | childToParentReference () const |
| Returns the column mapping child indices to parent indices. | |
| DesignObjectBase * | geometryBase () const |
| Returns the DesignObjectBase used for geometry storage. | |
| DesignObjectBase * | materialBase () const |
| Returns the DesignObjectBase used for material storage. | |
| DesignObjectBase * | parentBase () const |
| Returns the DesignObjectBase used for parent model storage. | |
| ColumnT< Buffer< uint04 > > & | parentToChildReference () const |
| Returns the column mapping parent indices to child index lists. | |
| Protected Member Functions inherited from DesignObject | |
| template<class t_type> | |
| void | _setProperty (NDPO property, const t_type &value) |
| Low-level property setter that directly writes to the design properties table without triggering side effects such as transform or visibility updates. | |
| void | initDesignObject () |
| Initializes default property values for this design object after construction. | |
| Protected Member Functions inherited from DesignInfo | |
| DesignInfo (DesignObjectBase *base) | |
| Creates an new design object within the given DesignObjectBase. | |
| DesignInfo (uint04 index, DesignObjectBase *base) | |
| Sets a DesignObject up to be a pointer to an existing object in the database. | |
| void | _setDesignVisible (bool is_visible) |
| Sets the spatial visibility of this design object and propagates the change through the design hierarchy. | |
| void | _setTransform (const Matrix< fltp08 > &transform) |
| Sets the 4x4 transform matrix for this design object and propagates the change through the design hierarchy. | |
| Static Protected Attributes inherited from Device | |
| static DesignObjectLookup * | s_default_lookup |
| Default design object lookup shared by all devices. | |
Forward declaration for distance encoder device.
A position sensor is a Device that determines the position of Hardware. This device might be a GPS or SLAM style logic device.
Definition at line 54 of file PositionSensor.h.
Constructs a PositionSensor with the given model, log, and optional parent.
| [in] | name | The model associated with this sensor. |
| [in] | log | The log to use for diagnostic messages. |
| [in] | parent | The optional QObject parent. |
Referenced by RealSensePositionSensor::RealSensePositionSensor().
|
inlinevirtual |
Adds a deployment segment at the given distance.
| [in] | distance | The distance for the new deployment segment. |
Reimplemented in RealSensePositionSensor.
Definition at line 97 of file PositionSensor.h.
|
inlinenodiscardvirtual |
Returns the distance encoder attached to this sensor, if any.
Definition at line 133 of file PositionSensor.h.
|
inlinenodiscardvirtual |
Returns the current GNSS fix quality.
Reimplemented in GPSSensor.
Definition at line 80 of file PositionSensor.h.
References e_invalid.
Returns the last known 3D position of this sensor.
Referenced by RealSensePositionSensor::locationAt().
|
inlinenodiscardvirtual |
Returns the orientation sensor associated with this position sensor, if any.
Reimplemented in GPSSensor.
Definition at line 139 of file PositionSensor.h.
|
inlinevirtual |
Removes a deployment segment at the given index.
| [in] | index | The index of the segment to remove, or Invalid to remove the last. |
Definition at line 100 of file PositionSensor.h.
References DesignObject::index().
|
inlinevirtual |
Requests attaching a distance encoder to this position sensor.
| [in] | DistanceEncoder | Pointer to the distance encoder to attach. |
Definition at line 94 of file PositionSensor.h.
|
virtual |
Requests enabling or disabling GPS-based positioning.
| [in] | using_gps | Whether to enable GPS. |
Reimplemented in GPSSensor.
Returns the physical location of the sensor on the hardware.
Definition at line 71 of file PositionSensor.h.
References m_sensor_location.
Sets the current acceleration vector of the sensor.
| [in] | acceleration | The 3D acceleration vector. |
Sets the current position of this sensor.
| [in] | location | The 3D position to set. |
Referenced by RealSensePositionSensor::addDeploymentSegment(), RealSensePositionSensor::setLocation(), and RealSensePositionSensor::setLocationFromSLAM().
Sets the physical location of the sensor on the hardware.
| [in] | location | The 3D sensor location to set. |
Sets the current velocity vector of the sensor.
| [in] | velocity | The 3D velocity vector. |
|
inlinevirtual |
Returns whether the station model is used for position offset computation.
Reimplemented in GPSSensor.
Definition at line 87 of file PositionSensor.h.
Returns the standard deviation of position measurements.
Reimplemented in GPSSensor.
Definition at line 136 of file PositionSensor.h.
|
overridevirtual |
Updates the position sensor state for the given time.
| [in] | time | The current time for the update cycle. |
Reimplemented from Device.
|
inlinenodiscardvirtual |
Returns whether GPS-based positioning is currently enabled.
Definition at line 90 of file PositionSensor.h.
References m_using_gps.