Click or drag to resize

MeshPainterAspect Class

An aspect which can paint on to meshes.
Inheritance Hierarchy

Namespace:  Demo3D.Visuals.MeshPainter
Assembly:  Demo3D.Core (in Demo3D.Core.dll) Version: 17.00.05
Syntax
C#
public class MeshPainterAspect : VisualAspect

The MeshPainterAspect type exposes the following members.

Constructors
  NameDescription
Public methodMeshPainterAspect
Initializes a new instance of the MeshPainterAspect class
Top
Properties
  NameDescription
Public propertyAngleLimit
The maximum angle difference between the ray and the vertex normal.
Protected propertyapp (Inherited from VisualAspect.)
Public propertyAspectManagedBy
The Aspect that this is managed by.
(Inherited from AspectComponentBase.)
Public propertyBindingNameStore
Manages binding names for aspect bindable items.
(Inherited from AspectComponentBase.)
Public propertyColor
The color to use when painting.
Protected propertydocument (Inherited from VisualAspect.)
Public propertyId (Inherited from SerializableObject.)
Public propertyInnerAngle
The angle away from the centeral ray to start painting.
Public propertyInnerToOuterSteps
The amount of steps to paint between the inner and outer angle.
Public propertyIsCollapsed
Collapse or expand the aspect in the Aspect Viewer.
(Inherited from AspectComponentBase.)
Public propertyIsEnabled
The value for whether the aspect is enabled.
(Inherited from AspectComponentBase.)
Public propertyIsMultiRay
True when PaintMode is MultiRay.
Public propertyIsReadOnly
When true, disable editing in the Aspect Viewer
(Inherited from AspectComponentBase.)
Public propertyMaxRayDistance
The maximum distance an intersection can be from the Visual's center.
Public propertyMaxVertexDistance
The maximum distance a vertex can be from the intersection of the ray.
Public propertyOuterAngle
The angle away from the central ray to stop painting.
Public propertyPaintMode
The current paint mode used for painting.
Public propertyPaintOnMove
When true, triggers a paint event when the Aspect's Visual is moved.
Public propertyRayColor
The color of the ray.
Public propertyRayRadius
The radius of the ray.
Public propertyRotationSteps
The amount of steps to paint around the central ray.
Public propertyShowRay
Show the centeral ray used for painting.
Public propertyTargetFaceLength
The maximum length of the edge of a face when generating a paintable mesh. The smaller the value the smaller the generated faces are which provides a more accurate paint result but at the cost of performance.
Public propertyVisual (Inherited from VisualAspect.)
Top
Methods
  NameDescription
Public methodBindingName
Retrieves or generates a binding name for an aspect property.
(Inherited from AspectComponentBase.)
Protected methodCanAdd
Determine whether the aspect can be added to the AspectContainer.
(Inherited from AspectComponentBase.)
Protected methodCleanupBindingAPI
Remove all bindable items that have been added to the binding api via UpdateBindingAPI.
(Inherited from AspectComponentBase.)
Public methodClearPaintOnTarget
Removes all paint on the painted mesh that intersects with the painted ray.
Public methodCreateManagedAspectT
Create a managed aspect of the desired type in this aspect's container. The managed aspect will be owned by the declared aspect.
(Inherited from AspectComponentBase.)
Public methodFindAspectT
Find an aspect of the desired type in this aspect's container.
(Inherited from AspectComponentBase.)
Public methodFindCreateAspectT
Find or, if one isn't found, create an aspect of the desired type in this aspect's container.
(Inherited from AspectComponentBase.)
Public methodFindCreateManagedAspectT
Find or, if one isn't found, create a managed aspect of the desired type in this aspect's container. The managed aspect will be owned by the declared aspect.
(Inherited from AspectComponentBase.)
Public methodGetPaintColor
Get the paint color of a painted mesh that intersects with the painted ray, and applies it to this Aspect.
Protected methodOnAdded (Overrides AspectComponentBaseOnAdded.)
Protected methodOnAssigned
Called when assigned to an aspect container, this should never be invoked manually. No other aspects should be accessed within this method.
(Inherited from AspectComponentBase.)
Protected methodOnDisabled (Overrides AspectComponentBaseOnDisabled.)
Protected methodOnEnabled (Overrides AspectComponentBaseOnEnabled.)
Protected methodOnInitialize
Called when the aspect container is Initialized, this should never be invoked manually
(Inherited from AspectComponentBase.)
Public methodOnRayHitCustom
Executed when using a custom paint mode. Can be overridden to implement custom behaviour.
Protected methodOnRemoved
Called when removed from an aspect container, this should never be invoked manually
(Inherited from AspectComponentBase.)
Protected methodOnReset
Called when the aspect container is Reset, this should never be invoked manually
(Inherited from AspectComponentBase.)
Public methodPaint
Paint a visual using a world ray. If no visual is supplied then use the world ray to attempt to pick a visual in the scene. If no world ray is supplied then pick in the Aspect Visual's -Y axis.
Public methodPaint(Visual)
Paint a visual using a world ray. If no visual is supplied then use the world ray to attempt to pick a visual in the scene. If no world ray is supplied then pick in the Aspect Visual's -Y axis.
Public methodPaint(Visual, Ray)
Paint a visual using a world ray. If no visual is supplied then use the world ray to attempt to pick a visual in the scene. If no world ray is supplied then pick in the Aspect Visual's -Y axis.
Protected methodprint (Inherited from VisualAspect.)
Public methodRaisePropertiesChanged
Raise an PropertyChanged event for each value.
(Inherited from BindableBase.)
Public methodRaisePropertyChanged(PropertyChangedEventArgs)
Raise an PropertyChanged event for the specified value.
(Inherited from BindableBase.)
Public methodRaisePropertyChanged(String)
Raise an PropertyChanged event for the specified value.
(Inherited from BindableBase.)
Public methodReleaseBindingName
Releases the generated binding name for an aspect property.
(Inherited from AspectComponentBase.)
Public methodRemoveAspect(Object)
Remove the desired aspect from this aspect's container.
(Inherited from AspectComponentBase.)
Public methodRemoveAspectT
Remove the aspect of the desired type from this aspect's container.
(Inherited from AspectComponentBase.)
Public methodRemoveManagedAspects
Remove all aspects that are being managed by this aspect..
(Inherited from AspectComponentBase.)
Public methodSerializableDependency(SerializableObject) Obsolete.
Whether the specified object depends on the serializable object.
(Inherited from AspectComponentBase.)
Public methodSerializableDependency(Visual) Obsolete.
Whether the specified visual depends on the serializable object.
(Inherited from AspectComponentBase.)
Protected methodSetINotifyPropertyChangedPropertyT
Checks to see if the property is the same as the specified value. It they're different then set the value and raise an PropertyChanged event. Property changes on the new value are also listened to and, if one occurs, the propertyChangedCallback handler will be invoked.
(Inherited from BindableBase.)
Protected methodSetPropertyT(T, T, PropertyChangedEventArgs)
Checks to see if the property is the same as the specified value. It they're different then set the value and raise an PropertyChanged event.
(Inherited from BindableBase.)
Protected methodSetPropertyT(T, T, String)
Checks to see if the property is the same as the specified value. It they're different then set the value and raise an PropertyChanged event.
(Inherited from BindableBase.)
Public methodToString (Inherited from AspectComponentBase.)
Protected methodUpdateBindingAPI
If this aspect implements IBindableItemOwner, this method performs the following for each BindableItem:
If the aspect is disabled OR the item is not part of the binding interface (see IsBindingInterface), then remove it from the binding API.
Otherwise, if the item is part of the binding interface AND the item does not already have a declared binding (see HasBindingInterface), add the item to the binding API.
Any bindable items that are added to the binding API will appear in the IO browser grid and can be further utilized for controls testing.
(Inherited from AspectComponentBase.)
Protected methodvector (Inherited from VisualAspect.)
Top
Events
  NameDescription
Public eventIsEnabledChanged
Occurs when the value of IsEnabled changes.
(Inherited from AspectComponentBase.)
Top
See Also