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

渲染视图的基类 更多...

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

Public 成员函数

 Viewer (global::System.IntPtr cPtr, bool cMemoryOwn)
 仅供内部使用
 
void Dispose ()
 
uint GetUuid ()
 
uint GetWidth ()
 
uint GetHeight ()
 
float GetZoomFactor ()
 
void SetZoomFactor (float val)
 
float GetFPS ()
 
void SetFPS (float val)
 
bool GetViewMode2D ()
 
void SetViewMode2D (bool val)
 
CameraDriver GetCameraDriver ()
 
void SetCameraDriver (CameraDriver val)
 
bool GetCursorUpdatable ()
 
void SetCursorUpdatable (bool val)
 
virtual void Destroy ()
 内部方法。释放资源
 
void Clear ()
 清空场景
 
void SetDocument (Document doc)
 设置关联的文档
 
Document GetDocument ()
 获取文档对象
 
void SetViewId (ObjectId viewId)
 设置View的Id
 
ObjectId GetViewId ()
 获取View的ID
 
void PushEditMode (string name, Editor editor)
 设置编辑模式, editor作为默认的编辑器
 
bool PopEditMode ()
 EditMode出栈。
 
void InternalPushEditor (Editor editor, bool bClearOld)
 内部方法,禁止调用
 
Editor GetEditor ()
 得到Editor
 
void ClearEditor ()
 清空设置的编辑器。
 
virtual float GetTimeTicks ()
 获取时间间隔
 
virtual void OnTime (float timeTick)
 时间事件处理。
 
virtual void Run (GuiRenderer gui)
 以模态运行。循环执行,直至程序退出。仅在独立窗口模式下调用
 
virtual bool ProcessEvent (GuiRenderer gui)
 处理消息。。仅在独立窗口模式下调用
 
EnumRedrawResult Redraw (float timeTick, bool force)
 绘制画面
 
EnumRedrawResult Redraw (float timeTick)
 绘制画面
 
void RequestUpdate (EnumUpdateFlags flag)
 请求更新视图
 
ViewContext GetContext ()
 获取视图上下文。
 
RenderSettings GetRenderSettings ()
 获取渲染器设置
 
void ZoomToExtend (float ratio)
 缩放视图适应窗口
 
void ZoomToExtend ()
 缩放视图适应窗口
 
void ZoomToBox (AABox bbox, float ratio)
 缩放到指定的包围盒
 
void ZoomToBox (AABox bbox)
 缩放到指定的包围盒
 
virtual ScreenShot CreateScreenShot ()
 创建屏幕截图
 
void SetBackgroundColor (Vector4 clr)
 设置背景颜色
 
void SetBackground (Background background)
 设置背景对象。
 
Background GetBackground ()
 获取当前的背景对象
 
void SetCoordinateGrid (CoordinateGridWidget grid)
 设置工作轴网
 
CoordinateGridWidget GetCoordinateGrid ()
 获取轴网组件
 
void ShowCoordinateGrid (bool bShow)
 设置轴网可见性
 
void SetWorkingPlane (GAx2 ax)
 设置工作平面坐标系
 
GAx2 GetWorkingPlane ()
 获取工作平面坐标系
 
Vector3 ScreenPointToWorldPoint (uint x, uint y, float z)
 屏幕坐标转换成三维世界坐标
 
Vector3 WorldPointToSceenPoint (Vector3 pt)
 三维世界坐标转换成二维的屏幕坐标
 
Ray WindowPointToRay (uint x, uint y)
 窗口的坐标转换成射线
 
void SetStandardView (EnumStandardView view, bool bAnimation)
 以标准视角设置相机方向
 
void SetStandardView (EnumStandardView view)
 以标准视角设置相机方向
 
void LookAt (Vector3 target, Vector3 dir, Vector3 up, bool bAnimation)
 设置相机方向
 
void ReloadSettings ()
 
virtual void OnResized (uint width, uint height)
 窗口大小变化后调用.
 
void OnDocumentChanged (DocumentEventArgs args)
 文档有更新时调用
 
void OnMouseDown (InputEvent evt)
 处理鼠标按下消息
 
void OnMouseUp (InputEvent evt)
 处理鼠标松开消息
 
void OnMouseMove (InputEvent evt)
 处理鼠标移动消息
 
void OnMultiTouch (MultiTouchEvent evt)
 
void OnBeginMultiTouch (MultiTouchEvent evt)
 
void OnEndMultiTouch (MultiTouchEvent evt)
 
void OnMouseWheel (InputEvent evt, int delta)
 
参数
delta: 大于 0 scroll up, 小于 0 scroll down

 
void OnKeyDown (InputEvent evt)
 处理键盘按下消息
 
void OnKeyUp (InputEvent evt)
 处理键盘松开消息
 
void OnInput (ParameterDict parameters)
 处理用户输入消息
 
bool OnEditorAction (string name, ParameterDict parameters)
 执行Editor的动作
 
virtual void ResizeWindow (uint width, uint height)
 设置窗口大小
 
virtual void InstallEventHandlers ()
 内部方法。设置事件处理器
 
virtual FloatList ReadDepthBuffer (uint posX, uint posY, uint width, uint height)
 内部方法
 
virtual bool WndProc (long hWnd, int msg, ulong wparam, long lparam)
 内部方法
 
virtual void OnDeviceLost (long hParent)
 内部方法
 
void SetCursor (Cursor cursor)
 设置自定义光标
 

静态 Public 成员函数

static void SetZoomFacotr (float zoomOut, float zoomIn)
 

详细描述

渲染视图的基类

三维渲染视图 Group: Rendering

成员函数说明

◆ CreateScreenShot()

virtual ScreenShot AnyCAD.Foundation.Viewer.CreateScreenShot ( )
virtual

创建屏幕截图

返回
ScreenShot对象

◆ GetBackground()

Background AnyCAD.Foundation.Viewer.GetBackground ( )

获取当前的背景对象

返回
Background

◆ GetContext()

ViewContext AnyCAD.Foundation.Viewer.GetContext ( )

获取视图上下文。

返回
返回ViewContext

◆ GetCoordinateGrid()

CoordinateGridWidget AnyCAD.Foundation.Viewer.GetCoordinateGrid ( )

获取轴网组件

返回
CoordinateGridWidget

◆ GetDocument()

Document AnyCAD.Foundation.Viewer.GetDocument ( )

获取文档对象

返回
文档对象

◆ GetEditor()

Editor AnyCAD.Foundation.Viewer.GetEditor ( )

得到Editor

返回
Editor

◆ GetRenderSettings()

RenderSettings AnyCAD.Foundation.Viewer.GetRenderSettings ( )

获取渲染器设置

返回
RenderSettings 渲染器设置对象指针

◆ GetTimeTicks()

virtual float AnyCAD.Foundation.Viewer.GetTimeTicks ( )
virtual

获取时间间隔

返回

◆ GetViewId()

ObjectId AnyCAD.Foundation.Viewer.GetViewId ( )

获取View的ID

返回
Id

◆ GetWorkingPlane()

GAx2 AnyCAD.Foundation.Viewer.GetWorkingPlane ( )

获取工作平面坐标系

返回
坐标系

◆ InternalPushEditor()

void AnyCAD.Foundation.Viewer.InternalPushEditor ( Editor editor,
bool bClearOld )

内部方法,禁止调用

参数
editor编辑器
bClearOld是否清空
参见
IRenderView.SetEditor

◆ LookAt()

void AnyCAD.Foundation.Viewer.LookAt ( Vector3 target,
Vector3 dir,
Vector3 up,
bool bAnimation )

设置相机方向

参数
target目标位置
dir方向
upZ朝向
bAnimation是否启用动画方式

◆ OnDeviceLost()

virtual void AnyCAD.Foundation.Viewer.OnDeviceLost ( long hParent)
virtual

内部方法

参数
hParent

◆ OnDocumentChanged()

void AnyCAD.Foundation.Viewer.OnDocumentChanged ( DocumentEventArgs args)

文档有更新时调用

参数
argsDocument事件参数

◆ OnEditorAction()

bool AnyCAD.Foundation.Viewer.OnEditorAction ( string name,
ParameterDict parameters )

执行Editor的动作

参数
name名称
parameters参数

◆ OnInput()

void AnyCAD.Foundation.Viewer.OnInput ( ParameterDict parameters)

处理用户输入消息

参数
parameters参数

◆ OnKeyDown()

void AnyCAD.Foundation.Viewer.OnKeyDown ( InputEvent evt)

处理键盘按下消息

参数
evt参数

◆ OnKeyUp()

void AnyCAD.Foundation.Viewer.OnKeyUp ( InputEvent evt)

处理键盘松开消息

参数
evt参数

◆ OnMouseDown()

void AnyCAD.Foundation.Viewer.OnMouseDown ( InputEvent evt)

处理鼠标按下消息

参数
evt参数

◆ OnMouseMove()

void AnyCAD.Foundation.Viewer.OnMouseMove ( InputEvent evt)

处理鼠标移动消息

参数
evt参数

◆ OnMouseUp()

void AnyCAD.Foundation.Viewer.OnMouseUp ( InputEvent evt)

处理鼠标松开消息

参数
evt参数

◆ OnResized()

virtual void AnyCAD.Foundation.Viewer.OnResized ( uint width,
uint height )
virtual

窗口大小变化后调用.

参数
width窗口宽度
height窗口高度

◆ OnTime()

virtual void AnyCAD.Foundation.Viewer.OnTime ( float timeTick)
virtual

时间事件处理。

参数
timeTick

◆ ProcessEvent()

virtual bool AnyCAD.Foundation.Viewer.ProcessEvent ( GuiRenderer gui)
virtual

处理消息。。仅在独立窗口模式下调用

参数
gui界面外挂,可为null。

◆ PushEditMode()

void AnyCAD.Foundation.Viewer.PushEditMode ( string name,
Editor editor )

设置编辑模式, editor作为默认的编辑器

参数
name名称
editorEditMode对象

◆ ReadDepthBuffer()

virtual FloatList AnyCAD.Foundation.Viewer.ReadDepthBuffer ( uint posX,
uint posY,
uint width,
uint height )
virtual

内部方法

参数
posX
posY
width
height
返回

◆ Redraw() [1/2]

EnumRedrawResult AnyCAD.Foundation.Viewer.Redraw ( float timeTick)

绘制画面

参数
timeTick时间间隔
返回
0 if no drawing needed. 1:绘制完成 2:增量绘制 3:相机动画

◆ Redraw() [2/2]

EnumRedrawResult AnyCAD.Foundation.Viewer.Redraw ( float timeTick,
bool force )

绘制画面

参数
timeTick时间间隔
返回
0 if no drawing needed. 1:绘制完成 2:增量绘制 3:相机动画

◆ RequestUpdate()

void AnyCAD.Foundation.Viewer.RequestUpdate ( EnumUpdateFlags flag)

请求更新视图

参数
flag更新标记

◆ ResizeWindow()

virtual void AnyCAD.Foundation.Viewer.ResizeWindow ( uint width,
uint height )
virtual

设置窗口大小

参数
width宽度
height高度

◆ Run()

virtual void AnyCAD.Foundation.Viewer.Run ( GuiRenderer gui)
virtual

以模态运行。循环执行,直至程序退出。仅在独立窗口模式下调用

参数
gui界面外挂,可为null。

◆ ScreenPointToWorldPoint()

Vector3 AnyCAD.Foundation.Viewer.ScreenPointToWorldPoint ( uint x,
uint y,
float z )

屏幕坐标转换成三维世界坐标

参数
x鼠标的x坐标,相对窗口
y鼠标的y坐标,相对窗口
z深度。取值范围[0, 1]
返回
三维坐标位置

◆ SetBackground()

void AnyCAD.Foundation.Viewer.SetBackground ( Background background)

设置背景对象。

参数
background对象

◆ SetBackgroundColor()

void AnyCAD.Foundation.Viewer.SetBackgroundColor ( Vector4 clr)

设置背景颜色

参数
clr颜色

◆ SetCoordinateGrid()

void AnyCAD.Foundation.Viewer.SetCoordinateGrid ( CoordinateGridWidget grid)

设置工作轴网

参数
grid轴网对象

◆ SetCursor()

void AnyCAD.Foundation.Viewer.SetCursor ( Cursor cursor)

设置自定义光标

参数
cursor

◆ SetDocument()

void AnyCAD.Foundation.Viewer.SetDocument ( Document doc)

设置关联的文档

参数
doc文档对象

◆ SetStandardView() [1/2]

void AnyCAD.Foundation.Viewer.SetStandardView ( EnumStandardView view)

以标准视角设置相机方向

参数
view标准视角

◆ SetStandardView() [2/2]

void AnyCAD.Foundation.Viewer.SetStandardView ( EnumStandardView view,
bool bAnimation )

以标准视角设置相机方向

参数
view标准视角
bAnimation是否动画

◆ SetViewId()

void AnyCAD.Foundation.Viewer.SetViewId ( ObjectId viewId)

设置View的Id

参数
viewIdID

◆ SetWorkingPlane()

void AnyCAD.Foundation.Viewer.SetWorkingPlane ( GAx2 ax)

设置工作平面坐标系

参数
ax坐标系

◆ ShowCoordinateGrid()

void AnyCAD.Foundation.Viewer.ShowCoordinateGrid ( bool bShow)

设置轴网可见性

参数
bShow

◆ WindowPointToRay()

Ray AnyCAD.Foundation.Viewer.WindowPointToRay ( uint x,
uint y )

窗口的坐标转换成射线

参数
xX坐标
yY坐标
返回
射线对象

◆ WndProc()

virtual bool AnyCAD.Foundation.Viewer.WndProc ( long hWnd,
int msg,
ulong wparam,
long lparam )
virtual

内部方法

参数
hWnd
msg
wparam
lparam
返回

◆ WorldPointToSceenPoint()

Vector3 AnyCAD.Foundation.Viewer.WorldPointToSceenPoint ( Vector3 pt)

三维世界坐标转换成二维的屏幕坐标

参数
pt世界坐标
返回
屏幕坐标。z对应深度信息。

◆ ZoomToBox() [1/2]

void AnyCAD.Foundation.Viewer.ZoomToBox ( AABox bbox)

缩放到指定的包围盒

参数
bbox包围盒

◆ ZoomToBox() [2/2]

void AnyCAD.Foundation.Viewer.ZoomToBox ( AABox bbox,
float ratio )

缩放到指定的包围盒

参数
bbox包围盒
ratio比例。1.2为默认比例

◆ ZoomToExtend()

void AnyCAD.Foundation.Viewer.ZoomToExtend ( float ratio)

缩放视图适应窗口

参数
ratio比例。1.2为默认比例