Class IViewportExtensions
- Namespace
- HelixToolkit.SharpDX
- Assembly
- HelixToolkit.SharpDX.dll
public static class IViewportExtensions
- Inheritance
-
IViewportExtensions
- Inherited Members
Fields
EmptyHits
public static readonly HitTestResult[] EmptyHits
Field Value
Methods
FindBounds(IViewport3DX)
Finds the bounding box of the viewport.
public static BoundingBox FindBounds(this IViewport3DX viewport)
Parameters
viewportIViewport3DXThe viewport.
Returns
- BoundingBox
The bounding box.
FindBoundsInternal(IViewport3DX)
public static BoundingBox FindBoundsInternal(this IViewport3DX viewport)
Parameters
viewportIViewport3DX
Returns
FindHits(IViewport3DX, Vector2)
Finds the hits for a given 2D viewport position.
public static IList<HitTestResult> FindHits(this IViewport3DX viewport, Vector2 position)
Parameters
viewportIViewport3DXThe viewport.
positionVector2The position.
Returns
- IList<HitTestResult>
List of hits, sorted with the nearest hit first.
FindHits(IViewport3DX, Vector2, ref List<HitTestResult>)
Finds the hits.
public static bool FindHits(this IViewport3DX viewport, Vector2 position, ref List<HitTestResult> hits)
Parameters
viewportIViewport3DXThe viewport.
positionVector2The position.
hitsList<HitTestResult>The hits.
Returns
FindHitsInFrustum(IViewport3DX, Vector2, ref List<HitTestResult>)
Finds the hits in camera view frustum only.
public static bool FindHitsInFrustum(this IViewport3DX viewport, Vector2 pos, ref List<HitTestResult> hits)
Parameters
viewportIViewport3DXThe viewport.
posVector2The position.
hitsList<HitTestResult>The hits.
Returns
FindNearest(IViewport3DX, Vector2, out Vector3, out Vector3, out object?)
Finds the nearest point and its normal.
public static bool FindNearest(this IViewport3DX viewport, Vector2 position, out Vector3 point, out Vector3 normal, out object? model)
Parameters
viewportIViewport3DXThe viewport.
positionVector2The position.
pointVector3The point.
normalVector3The normal.
modelobjectThe model.
Returns
- bool
The find nearest.
ForceUpdateTransformsAndBounds(IViewport3DX)
Forces to update transform and bounds.
public static void ForceUpdateTransformsAndBounds(this IViewport3DX viewport)
Parameters
viewportIViewport3DXThe viewport.
GetProjectionMatrix(IViewport3DX)
Gets the projection matrix.
public static Matrix4x4 GetProjectionMatrix(this IViewport3DX viewport)
Parameters
viewportIViewport3DXThe viewport.
Returns
GetScreenViewProjectionMatrix(IViewport3DX)
Gets the total transform for a ViewportCore. Old name of this function: GetTotalTransform New name of the function: GetScreenViewProjectionTransform
public static Matrix4x4 GetScreenViewProjectionMatrix(this IViewport3DX viewport)
Parameters
viewportIViewport3DXThe viewport.
Returns
- Matrix4x4
The total transform.
GetViewProjectionMatrix(IViewport3DX)
Gets the camera transform.
public static Matrix4x4 GetViewProjectionMatrix(this IViewport3DX viewport)
Parameters
viewportIViewport3DXThe viewport.
Returns
- Matrix4x4
The camera transform.
GetViewportMatrix(IViewport3DX)
Gets the viewport transform aka the screen-space transform.
public static Matrix4x4 GetViewportMatrix(this IViewport3DX viewport)
Parameters
viewportIViewport3DXThe viewport.
Returns
- Matrix4x4
The transform.
Project(IViewport3DX, Vector3)
Projects the specified 3D point to a 2D screen point.
public static Vector2 Project(this IViewport3DX viewport, Vector3 point)
Parameters
viewportIViewport3DXThe viewport.
pointVector3The 3D point.
Returns
- Vector2
The point.
RenderToBitmapStream(IViewport3DX)
Renders to bitmap stream.
public static MemoryStream? RenderToBitmapStream(this IViewport3DX view)
Parameters
viewIViewport3DXThe view.
Returns
Traverse(IViewport3DX, Action<SceneNode>)
Traverses the Visual3D/Element3D tree and invokes the specified action on each Element3D of the specified type.
public static void Traverse(this IViewport3DX viewport, Action<SceneNode> action)
Parameters
viewportIViewport3DXThe viewport.
actionAction<SceneNode>The action.
Traverse(IViewport3DX, Func<SceneNode, bool>)
Traverses the specified action.
public static void Traverse(this IViewport3DX viewport, Func<SceneNode, bool> function)
Parameters
viewportIViewport3DXThe viewport.
functionFunc<SceneNode, bool>The function. Return true to continue traverse, otherwise stop at current node
UnProject(IViewport3DX, Vector2, out Ray)
Un-project 2D screen point onto 3D space by camera.
public static bool UnProject(this IViewport3DX viewport, Vector2 point2d, out Ray ray)
Parameters
viewportIViewport3DXThe viewport.
point2dVector2The point2d.
rayRayThe ray.
Returns
UnProjectOnPlane(IViewport3DX, Vector2, Vector3, Vector3)
Uns the project on plane.
public static Vector3? UnProjectOnPlane(this IViewport3DX viewport, Vector2 p, Vector3 position, Vector3 normal)
Parameters
viewportIViewport3DXThe viewport.
pVector2The p.
positionVector3The position.
normalVector3The normal.
Returns
UnProjectOnPlane(IViewport3DX, Vector2, Vector3, Vector3, out Vector3)
Uns the project 2D point onto a 3D plane.
public static bool UnProjectOnPlane(this IViewport3DX viewport, Vector2 p, Vector3 position, Vector3 normal, out Vector3 intersection)
Parameters
viewportIViewport3DXThe viewport.
pVector2The p.
positionVector3The position.
normalVector3The normal.
intersectionVector3The intersection.