AnyCAD Rapid API 2026
Help you to create a better world!
载入中...
搜索中...
未找到
AnyCAD.Foundation.Camera类 参考

相机信息 更多...

类 AnyCAD.Foundation.Camera 继承关系图:

Public 成员函数

 Camera (global::System.IntPtr cPtr, bool cMemoryOwn)
 仅供内部使用
 
void Dispose ()
 
 Camera ()
 默认构造函数
 
 Camera (uint width, uint height, Vector3d position, Vector3d target, Vector3d up)
 构造函数
 
Vector3d GetPosition ()
 
void SetPosition (Vector3d val)
 
Vector3 GetPositionf ()
 
Vector3d GetUp ()
 
void SetUp (Vector3d val)
 
Vector3 GetUpf ()
 
Vector3d GetTarget ()
 
void SetTarget (Vector3d val)
 
Vector3 GetTargetf ()
 
Vector2d GetPageOffset ()
 
void SetPageOffset (Vector2d val)
 
Vector2 GetPageOffsetf ()
 
Matrix4d GetViewMatrix ()
 
Matrix4 GetViewMatrixf ()
 
double GetNear ()
 
void SetNear (double val)
 
double GetFar ()
 
void SetFar (double val)
 
double GetFovy ()
 
void SetFovy (double val)
 
ViewPosition GetOrigin ()
 
void SetOrigin (ViewPosition val)
 
ViewPosition GetSize ()
 
void SetSize (ViewPosition val)
 
uint GetWidth ()
 
void SetWidth (uint val)
 
uint GetHeight ()
 
void SetHeight (uint val)
 
double GetOrthoZoomFactor ()
 
float GetOrthoZoomFactorf ()
 获取正交缩放因子(float类型)
 
EnumProjectionType GetProjectionType ()
 
void SetProjectionType (EnumProjectionType val)
 
Matrix4d GetProjectionMatrix ()
 
Matrix4 GetProjectionMatrixf ()
 
bool GetLockNearFar ()
 
void SetLockNearFar (bool val)
 
Vector3d GetDirection ()
 获取相机朝向,单位向量
 
Vector3 GetDirectionf ()
 获取相机朝向,单位向量(float类型)
 
Vector3d GetRight ()
 获取相机坐标系右方向
 
Vector3 GetRightf ()
 获取相机坐标系右方向(float类型)
 
double GetDistance ()
 获取相机位置距离观察位置的距离
 
float GetDistancef ()
 获取相机位置距离观察位置的距离(float类型)
 
void LookAt (Vector3d position, Vector3d target, Vector3d up)
 设置相机姿态
 
void LookByDirection (Vector3d target, Vector3d dir, Vector3d up)
 设置相机姿态
 
void UpdateNearFar (AABox sceneBox)
 根据包围盒设置远近距离
 
Vector2d GetViewportSize ()
 获取视口大小
 
Vector2d GetViewportOrigin ()
 获取视口起始位置
 
Vector4d GetViewport ()
 获取视口
 
Vector2d GetViewportCenter ()
 获取视口中心位置
 
void Resize (uint width, uint height)
 设置视口大小
 
void SetOrthoZoomFactor (double zoomFactor)
 设置正交缩放系数
 
void Zoom (double ratio, double distance)
 按照比例设置缩放系数
 
void SetZoomFactorRange (double minV, double maxV)
 设置缩放系统范围
 
void ClearZoomFactorRange ()
 清除缩放限制
 
Matrix4d ComputeOrthoMatrix (double zoomFactor)
 根据缩放系数计算正交投影矩阵
 
bool Contain (uint winX, uint winY)
 测试指定屏幕坐标点是否在相机视角范围
 
void UpdateViewMatrix ()
 更新视图矩阵
 
void UpdateProjectionMatrix ()
 更新投影矩阵
 
void Dump ()
 输出相机信息
 

详细描述

相机信息

Group: Rendering

相机视口坐标系

  1. 原点 [left, bottom] h ^------— | | | | O------—> w 原点和尺寸支持相对位置.
  2. 相机可以在视口之间共享.
    参见
    EnumPositionType

构造及析构函数说明

◆ Camera()

AnyCAD.Foundation.Camera.Camera ( uint width,
uint height,
Vector3d position,
Vector3d target,
Vector3d up )

构造函数

参数
width宽度
height高度
position相机位置
target目标位置
up上方向向量

成员函数说明

◆ ComputeOrthoMatrix()

Matrix4d AnyCAD.Foundation.Camera.ComputeOrthoMatrix ( double zoomFactor)

根据缩放系数计算正交投影矩阵

参数
zoomFactor缩放系数
返回
矩阵

◆ Contain()

bool AnyCAD.Foundation.Camera.Contain ( uint winX,
uint winY )

测试指定屏幕坐标点是否在相机视角范围

参数
winX屏幕坐标点X
winY屏幕坐标点Y
返回
是否在相机视角范围

◆ GetDirection()

Vector3d AnyCAD.Foundation.Camera.GetDirection ( )

获取相机朝向,单位向量

返回
向量

◆ GetDirectionf()

Vector3 AnyCAD.Foundation.Camera.GetDirectionf ( )

获取相机朝向,单位向量(float类型)

返回
向量

◆ GetDistance()

double AnyCAD.Foundation.Camera.GetDistance ( )

获取相机位置距离观察位置的距离

返回
距离

◆ GetDistancef()

float AnyCAD.Foundation.Camera.GetDistancef ( )

获取相机位置距离观察位置的距离(float类型)

返回
距离

◆ GetOrthoZoomFactorf()

float AnyCAD.Foundation.Camera.GetOrthoZoomFactorf ( )

获取正交缩放因子(float类型)

返回
正交缩放因子

◆ GetRight()

Vector3d AnyCAD.Foundation.Camera.GetRight ( )

获取相机坐标系右方向

返回
向量

◆ GetRightf()

Vector3 AnyCAD.Foundation.Camera.GetRightf ( )

获取相机坐标系右方向(float类型)

返回
向量

◆ GetViewport()

Vector4d AnyCAD.Foundation.Camera.GetViewport ( )

获取视口

返回
{位置,大小}

◆ GetViewportCenter()

Vector2d AnyCAD.Foundation.Camera.GetViewportCenter ( )

获取视口中心位置

返回
中心点

◆ GetViewportOrigin()

Vector2d AnyCAD.Foundation.Camera.GetViewportOrigin ( )

获取视口起始位置

返回
视口原点

◆ GetViewportSize()

Vector2d AnyCAD.Foundation.Camera.GetViewportSize ( )

获取视口大小

返回
视口的宽度和高度

◆ LookAt()

void AnyCAD.Foundation.Camera.LookAt ( Vector3d position,
Vector3d target,
Vector3d up )

设置相机姿态

参数
position位置
target观察位置
up向上向量

◆ LookByDirection()

void AnyCAD.Foundation.Camera.LookByDirection ( Vector3d target,
Vector3d dir,
Vector3d up )

设置相机姿态

参数
target目标位置
dir观察方向
up向上向量

◆ Resize()

void AnyCAD.Foundation.Camera.Resize ( uint width,
uint height )

设置视口大小

参数
width宽度
height高度

◆ SetOrthoZoomFactor()

void AnyCAD.Foundation.Camera.SetOrthoZoomFactor ( double zoomFactor)

设置正交缩放系数

参数
zoomFactor缩放系数

◆ SetZoomFactorRange()

void AnyCAD.Foundation.Camera.SetZoomFactorRange ( double minV,
double maxV )

设置缩放系统范围

参数
minV最小值
maxV最大值

◆ UpdateNearFar()

void AnyCAD.Foundation.Camera.UpdateNearFar ( AABox sceneBox)

根据包围盒设置远近距离

参数
sceneBox包围盒

◆ Zoom()

void AnyCAD.Foundation.Camera.Zoom ( double ratio,
double distance )

按照比例设置缩放系数

参数
ratio缩放比例( > 0) (正交投影)
distance移动的距离(透视投影)