Tanoda
|
The Box Graphic is a type of procedural mesh graphic that can generate thick panels with a number of useful features: More...
Public Member Functions | |
override void | RefreshSlicedMeshData (Vector2i resolution, RectMargins meshMargins, RectMargins uvMargins) |
Set the mesh property equal to the correct mesh given the Sliced Graphic's current settings. More... | |
![]() | |
override void | RefreshMeshData () |
When this method is called, the mesh property and the remappableChannels property must be assigned to valid states correctly matching the current state of the object. This is the method where you would do procedural mesh generation, or dynamic creations of mesh objects. More... | |
abstract void | RefreshSlicedMeshData (Vector2i resolution, RectMargins meshMargins, RectMargins uvMargins) |
Set the mesh property equal to the correct mesh given the Sliced Graphic's current settings. More... | |
![]() | |
abstract void | RefreshMeshData () |
When this method is called, the mesh property and the remappableChannels property must be assigned to valid states correctly matching the current state of the object. This is the method where you would do procedural mesh generation, or dynamic creations of mesh objects. More... | |
LeapMeshGraphicBase () | |
![]() | |
void | SetBlendShapeAmount (float amount) |
Helper method to set the blend shape amount for a blend shape data object attached to this graphic. This method will throw an exception if there is no blend shape data obj attached to this graphic. More... | |
float | GetBlendShapeAmount () |
Helper method to get the blend shape amount for a blend shape data object attached to this graphic. This method will throw an exception if there is no blend shape data obj attached to this graphic. More... | |
void | SetCustomChannel (string channelName, Color color) |
Helper method to set the custom channel value for the given channel name. This method will throw an exception if there is no channel with the given name, if the graphic is not currently attached to a group, or if the channel does not match up with the data type. More... | |
void | SetCustomChannel (string channelName, float value) |
Helper method to set the custom channel value for the given channel name. This method will throw an exception if there is no channel with the given name, if the graphic is not currently attached to a group, or if the channel does not match up with the data type. More... | |
void | SetCustomChannel (string channelName, Matrix4x4 value) |
Helper method to set the custom channel value for the given channel name. This method will throw an exception if there is no channel with the given name, if the graphic is not currently attached to a group, or if the channel does not match up with the data type. More... | |
void | SetCustomChannel (string channelName, Vector4 value) |
Helper method to set the custom channel value for the given channel name. This method will throw an exception if there is no channel with the given name, if the graphic is not currently attached to a group, or if the channel does not match up with the data type. More... | |
T | GetCustomChannel< T > (string channelName) |
Helper method to get a custom channel data object given the name of the feature it is attached to. This method can only be used if the graphic is currently attached to a group. More... | |
void | SetRuntimeTint (Color color) |
Helper method to set the runtime tint color for a runtime tint data object attached to this graphic. This method will throw an exception if there is no tint data obj attached to this graphic. More... | |
void | SetRuntimeTint (string htmlString) |
Overload of SetRuntimeTint that takes in a Html style string code that represents a color. Any string that can be parsed by ColorUtility.TryParseHtmlString can be used as an argument to this method. More... | |
Color | GetRuntimeTint () |
Helper method to get the runtime tint color for a runtime tint data object attached to this graphic. This method will throw an exception if there is no tint data obj attached to this graphic. More... | |
bool | TryDetach () |
This method tries to detach this graphic from whatever group it is currently attached to. It can fail if the graphic is not attached to any group, or if the group it is attached to does not support adding/removing graphics at runtime. More... | |
T | GetFeatureData< T > () |
Gets a single feature data object of a given type T. This will return null if there is no feature data object attached to this graphic of type T. More... | |
virtual void | NotifyWillBeAttached (LeapGraphicGroup toBeAttachedTo) |
Called by the system to notify that this graphic will be attached within the next frame. This is only called at runtime. More... | |
virtual void | CancelWillBeAttached () |
Called by the system to notify that a previous notification that this graphic would be attached has been cancelled due to a call to TryRemoveGraphic. More... | |
virtual void | NotifyWillBeDetached (LeapGraphicGroup toBeDetachedFrom) |
Called by the system to notify that this graphic will be detached within the next frame. This is only called at runtime. More... | |
virtual void | CancelWillBeDetached () |
Called by the system to notify that a previous notification that this graphic would be detached has been cancelled due to a call to TryAddGraphic. More... | |
virtual void | OnAttachedToGroup (LeapGraphicGroup group, LeapSpaceAnchor anchor) |
Called by the system when this graphic is attached to a group. This method is invoked both at runtime and at edit time. More... | |
void | OnUpdateAnchor (LeapSpaceAnchor anchor) |
Called by graphic groups when a renderer's attached space changes. More... | |
virtual void | OnDetachedFromGroup () |
Called by the system when this graphic is detached from a group. This method is invoked both at runtime and at edit time. More... | |
virtual void | OnAssignFeatureData (List< LeapFeatureData > data) |
Called by the system whenever feature data is re-assigned to this graphic. This is only called at edit time. More... | |
virtual void | OnBeforeSerialize () |
virtual void | OnAfterDeserialize () |
Properties | |
Vector3 | size [get] |
Gets the dimensions of the box graphic in local space. More... | |
![]() | |
ResolutionType | resolutionType [get] |
Returns the current resolution type being used for this panel. More... | |
Rect | rect [get] |
Returns the current local-space rect of this panel. If there is a RectTransform attached to this panel, this value is the same as calling rectTransform.rect. More... | |
bool | nineSliced [get, set] |
Gets or sets whether or not this panel is currently using nine slicing. More... | |
bool | canNineSlice [get] |
Returns whether or not the current source supports nine slicing. More... | |
UVChannelFlags | uvChannel [get] |
Returns which uv channel is being used for this panel. It will always match the uv channel being used by the source. More... | |
LeapFeatureData | sourceData [get] |
Returns the current feature data object being used as source. More... | |
![]() | |
Mesh | mesh [get, protected set] |
Returns the mesh that represents this graphic. It can have any topology, any number of uv channels, vertex colors, or normals. Note that the specific rendering method you might use might not support all of these features! More... | |
UVChannelFlags | remappableChannels [get, protected set] |
Returns an enum mask that represents the union of all channels that are allowed to be remapped for this mesh. If a uv channel is included in this mask, the matching uv coordinates are allowed to be remapped by any rendering method to implement texture atlasing. More... | |
![]() | |
bool | isRepresentationDirty [get, set] |
An internal flag that returns true if the visual representation of this graphic needs to be updated. You can set this to true to request a regeneration of the graphic during the next update cycle of the renderer. Note however, that not all renderers support updating the representation at runtime. More... | |
bool | isRepresentationDirtyOrEditTime [get] |
A simple utility getter that returns true if isRepresentationDirty is true, OR it is currently edit time. More... | |
string | favoriteGroupName [get, set] |
Gets or sets the name of the group that this graphic likes to be attached to. Whenever a graphic is enabled, it will try to attach to its favorite group. Whenever a graphic gets attached to a group, that group becomes its new favorite. More... | |
LeapSpaceAnchor | anchor [get] |
Returns the space anchor for this graphic. This will be null if the graphic is not currently part of a space. The anchor cannot be changed dynamically at runtime. More... | |
ITransformer | transformer [get] |
A utility getter that returns a transformer for this graphic. Even if the space anchor for this graphic is null, this will still return a valid transformer. In the null case, the transformer is always the identity transformer. More... | |
IList< LeapFeatureData > | featureData [get] |
Returns a list of feature data attached to this graphic. If this graphic is attached to a group, this feature data matches 1-to-1 with the features attached to this group. More... | |
LeapGraphicGroup | attachedGroup [get] |
Returns the group this graphic is attached to. More... | |
bool | isAttachedToGroup [get] |
Returns whether or not this graphic is attached to any group. Can still return false at runtime even if TryAddGraphic has just completed successfully due to the runtime delay for addition/removal of graphics. More... | |
bool | willbeAttached [get] |
Returns whether or not this graphic will be attached to a group within the next frame. Can only be true at runtime, since runtime is the only time when delayed attachment occurs. More... | |
bool | willbeDetached [get] |
Returns whether or not this graphic will be detached from a group within the next frame. Can only be true at runtime, since runtime is the only time when delayed detaching occurs. More... | |
Type | preferredRendererType [get] |
Returns the type this graphic prefers to be attached to. When calling LeapGraphicRenderer.TryAddGraphic it will prioritize being attached to groups with this renderer type if possible. More... | |
![]() | |
LeapSpaceAnchor | anchor [get] |
Additional Inherited Members | |
![]() | |
enum | ResolutionType { Vertices , VerticesPerRectilinearMeter } |
![]() | |
static bool | IsValidDataSource (LeapFeatureData dataSource) |
Returns whether or not a feature data object is a valid object that can be used to drive texture data for this panel. Only a TextureData object or a SpriteData object are currently valid. More... | |
![]() | |
Color | vertexColor = Color.white |
![]() | |
Action< LeapGraphicGroup > | OnAttachedToGroupEvent |
Action | OnDetachedFromGroupEvent |
![]() | |
const int | MAX_RESOLUTION = 128 |
![]() | |
override void | Reset () |
override void | OnValidate () |
void | assignDefaultSourceValue () |
void | setSourceFeatureDirty () |
float | calculateVertAxis (int vertIdx, int vertCount, float size, float border0, float border1, bool alwaysRespectBorder=false) |
Given a vertex index from an edge, the total vertCount and size along the current dimension, and the distance to the beginning and end borders along the current dimension (if nine-slicing is enabled ONLY), this method will return the distance along the current dimension that the vertIdx should be from the origin of the dimension. More... | |
![]() | |
virtual void | Reset () |
virtual void | OnValidate () |
virtual void | Awake () |
virtual void | OnEnable () |
virtual void | OnDestroy () |
virtual void | OnDrawGizmos () |
![]() | |
int | _sourceDataIndex = -1 |
ResolutionType | _resolutionType = ResolutionType.VerticesPerRectilinearMeter |
int | _resolution_vert_x = 4 |
int | _resolution_vert_y = 4 |
Vector2 | _resolution_verts_per_meter = new Vector2(20, 20) |
Vector2 | _size = new Vector2(0.1f, 0.1f) |
bool | _nineSliced = false |
![]() | |
LeapSpaceAnchor | _anchor |
FeatureDataList | _featureData = new FeatureDataList() |
LeapGraphicRenderer | _attachedRenderer |
int | _attachedGroupIndex = -1 |
string | _favoriteGroupName |
SerializableType | _preferredRendererType |
The Box Graphic is a type of procedural mesh graphic that can generate thick panels with a number of useful features:
Definition at line 26 of file LeapBoxGraphic.cs.
|
virtual |
Set the mesh property equal to the correct mesh given the Sliced Graphic's current settings.
Resolution along the X and Y axes are provided, as well as mesh-space and UV-space margins to pass into calculateVertAxis as border0 and border1 to support nine slicing (see Mesh Data Support).
Implements Leap.Unity.GraphicalRenderer.LeapSlicedGraphic.
Definition at line 41 of file LeapBoxGraphic.cs.
|
get |
Gets the dimensions of the box graphic in local space.
Definition at line 36 of file LeapBoxGraphic.cs.