Telerik UI for WPF?下载30天免费试用

相机的行为

相机行为允许您使用输入设备(鼠标或触摸)控制视角。要启用行为,可以添加Chart3DCameraBehavior对象中的行为收集RadCartesianChart3D控制。

例1:定义相机行为

< telerik: RadCartesianChart3D > < telerik: RadCartesianChart3D。行为>   
此外,您还可以通过行为的属性手动控制摄像机。

旋转相机

当您将鼠标移到图表上并移动鼠标时,摄像机将旋转。你可以使用行为FirstAngle而且SecondAngle属性手动旋转摄像机。

图1:旋转相机

WPF RadChartView3D旋转摄像机

例2:设置摄像机角度

FirstAngle是轴向右与相机位置与绘图区域中心之间的线在水平面上的投影之间的角度。当一个轴向上,另一个轴向观众时,右边的轴被认为是向右的轴。水平面被认为是由右轴和朝向观察者的轴所定义的平面。

图2:FirstAngle例子

WPF RadChartView3D FirstAngle示例

SecondAngle是夹角吗UpDirection轴和摄像机位置与plot区域中心之间的线。

图3:SecondAngle示例

WPF RadChartView3D SecondAngle示例

相机行为允许您定义自定义键组合,在拖动时激活旋转。你可以通过DragToRotateKeyCombinations收集。

示例3:定义拖动旋转组合键

ChartKeyCombination =新的ChartKeyCombination();keyCombination.Keys.Add (Key.LeftCtrl);keyCombination.MouseButtons.Add (MouseButton.Right);cameraBehavior.DragToRotateKeyCombinations.Add (keyCombination);
示例3显示如何将左键和鼠标右键设置为允许旋转摄像机的组合键。在移动鼠标的同时按下左键和鼠标右键将改变旋转角度。

改变相机距离

要改变距离,可以使用鼠标滚轮。您可以使用距离属性手动控制它。

图4:改变相机距离

WPF RadChartView3D改变相机距离

例4:改变距离

距离对于不同的相机有不同的意义。当一个PerspectiveCamera在使用的距离是摄像机所定位的球体的半径。当一个OrthographicCamera所使用的距离就是相机的宽度。

改变视野角度

要改变视场,您可以使用之间的组合转变键和鼠标滚轮.您可以使用FieldOfView属性手动更改视图域。

视场角度只能用一个PerspectiveCamera

图5:改变相机距离

WPF RadChartView3D改变相机距离

例5:手动设置视场


相机行为允许您定义自定义修改键,以激活鼠标滚轮上的视野更新。你可以通过FieldOfViewModifierKeys收集。当至少按下其中一个键时,视场将被更新。

例6:定义字段的视图修饰符键

cameraBehavior.FieldOfViewModifierKeys.Add (Key.F);
例子6展示了如何将F键定义为视图字段修饰键。按下F键并滚动鼠标滚轮将改变视场角度。

限制摄像头

您可以使用MaxDistanceMinDistanceMinSecondAngleMaxSecondAngle属性来限制摄像机可以观察到的区域。

例7:限制摄像头

了方向

相机的向上方向是由UpDirection属性,即三维向量.默认的向上方向是Z轴。

当相机行为被启用时,灯光方向由相机位置决定。所以,当你旋转相机时,灯光也会相应地旋转相机。控件可以切换此行为CameraBehavior3D。IsRotationEnabled附加属性。默认值为真正的.为了避免旋转,你可以设置它为.当你想用静态灯光来照亮场景时,这是很有用的。

例8:在XAML中禁用灯的自动旋转

< telerik: RadCartesianChart3D。灯> 

例9:在代码中禁用灯的自动旋转

Chart3DCameraBehavior。SetIsRotationEnabled(光、假);

另请参阅

在本文中
Baidu
map