沒(méi)有找到合適的產(chǎn)品?
聯(lián)系客服協(xié)助選型:023-68661681
提供3000多款全球軟件/控件產(chǎn)品
針對(duì)軟件研發(fā)的各個(gè)階段提供專(zhuān)業(yè)培訓(xùn)與技術(shù)咨詢(xún)
根據(jù)客戶(hù)需求提供定制化的軟件開(kāi)發(fā)服務(wù)
全球知名設(shè)計(jì)軟件,顯著提升設(shè)計(jì)質(zhì)量
打造以經(jīng)營(yíng)為中心,實(shí)現(xiàn)生產(chǎn)過(guò)程透明化管理
幫助企業(yè)合理產(chǎn)能分配,提高資源利用率
快速打造數(shù)字化生產(chǎn)線,實(shí)現(xiàn)全流程追溯
生產(chǎn)過(guò)程精準(zhǔn)追溯,滿足企業(yè)合規(guī)要求
以六西格瑪為理論基礎(chǔ),實(shí)現(xiàn)產(chǎn)品質(zhì)量全數(shù)字化管理
通過(guò)大屏電子看板,實(shí)現(xiàn)車(chē)間透明化管理
對(duì)設(shè)備進(jìn)行全生命周期管理,提高設(shè)備綜合利用率
實(shí)現(xiàn)設(shè)備數(shù)據(jù)的實(shí)時(shí)采集與監(jiān)控
打通數(shù)據(jù)孤島 實(shí)現(xiàn)生產(chǎn)過(guò)程全透明化
實(shí)現(xiàn)產(chǎn)品全生命周期的質(zhì)量管理與追溯
精準(zhǔn)制定生產(chǎn)計(jì)劃 合理配置生產(chǎn)資源
全面可視的生產(chǎn)質(zhì)量統(tǒng)計(jì)與追溯
一鍵生成排產(chǎn)計(jì)劃,有效提升資源利用率
打通生產(chǎn)過(guò)程數(shù)字化全鏈路,提高生產(chǎn)效率
幫助企業(yè)大幅降低因改裝質(zhì)量問(wèn)題帶來(lái)的損失
打造數(shù)字化工廠,全面提升產(chǎn)品質(zhì)量
快速應(yīng)對(duì)訂單變化,大幅減少企業(yè)資源浪費(fèi)
實(shí)現(xiàn)產(chǎn)品報(bào)價(jià)快速精準(zhǔn),全面實(shí)現(xiàn)生產(chǎn)透明化
打造生產(chǎn)計(jì)劃自動(dòng)排產(chǎn)信息化平臺(tái)
聲明:本產(chǎn)品中文介紹為慧都網(wǎng)版權(quán)所有,未經(jīng)慧都公司書(shū)面許可,嚴(yán)禁拷貝、轉(zhuǎn)載!
* 關(guān)于本產(chǎn)品的分類(lèi)與介紹僅供參考,精準(zhǔn)產(chǎn)品資料以官網(wǎng)介紹為準(zhǔn),如需購(gòu)買(mǎi)請(qǐng)先行測(cè)試。
該庫(kù)的主要部分是:
Cameras (SceneCamera, FirstPersonCamera, ThirdPersonCamera, 等)
Camera Controllers (MouseCameraController, CameraControlPanel)
3D Models and Visuals (Sphere, Box, Cylinder,等)
3D Lines
Event Manager 3D (簡(jiǎn)化了3D對(duì)象的事件處理)
Cameras, 3D Models和Lines可以在XAML中定義。并且結(jié)果能夠馬上就顯示在Visual Studio Designer(可視化工作室設(shè)計(jì)器)中。
使用Ab3d.PowerToys進(jìn)行3D編程式在容易不過(guò)了!
Cameras 與 Camera Controllers
該庫(kù)定義了一些新的Cameras,它能被用于代替目前WPF的攝像頭。Ab3d Cameras與WPFcameras的主要區(qū)別是,Ab3d Cameras不需要使用Vectors來(lái)定義LookDirection,而是利用角度來(lái)定義它。這使得更自然。例如,如果您想查看的場(chǎng)景需要偏上和偏右一點(diǎn)點(diǎn),您只需要定義Heading角度為30度和Attitude角度為-45度。您也可以定義場(chǎng)景的Distance。對(duì)于Ab3d Cameras最重要的是:SceneCamera, FirstPersonCamera 和ThirdPersonCamera。所有的Ab3d Cameras及他們的屬性能夠在類(lèi)圖上可以看到。
Camera Controllers用于控制攝像頭。MouseCameraController能夠被用于使用鼠標(biāo)改變攝像頭的角度和距離。這種方法可以非常簡(jiǎn)單的左右旋轉(zhuǎn)攝像頭。CameraControlPanel顯示的漂亮按鈕用于旋轉(zhuǎn)攝像頭和移動(dòng)攝像頭的遠(yuǎn)近。這里還有一個(gè)CameraPreviewPanel,它可以圖形化地顯示當(dāng)前攝像機(jī)正在注視的對(duì)象或場(chǎng)景。
下面的代碼展示的是一個(gè)WPF應(yīng)用程序只需要幾行xaml代碼就可以使用攝像頭來(lái)顯示整個(gè)場(chǎng)景(SceneCamera)并能夠通過(guò)鼠標(biāo)(MouseCameraController)或通過(guò)漂亮按鈕(CameraControlPanel)旋轉(zhuǎn)攝像頭。這里還有一個(gè)攝像頭的預(yù)覽,它顯示攝像頭特定的角度的注視的場(chǎng)景。此外,如果WindGeneratorModel模型不包含燈光,一個(gè)攝像頭的燈光會(huì)自定地被添加當(dāng)場(chǎng)景中并從攝像頭的位置照亮場(chǎng)景(ShowCameraLight=”Auto”)。
01.<Window x:Class="Ab3d.PowerToys.Samples.Window1"
02.xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
03.xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
04.xmlns:cameras="clr-namespace:Ab3d.Cameras;assembly=Ab3d.PowerToys"
05.xmlns:ab3d="clr-namespace:Ab3d.Controls;assembly=Ab3d.PowerToys">
06. <Grid>
07. <Viewport3D Name="MainViewport3D">
08. <ModelVisual3D Content="{StaticResource WindGeneratorModel}"/>
09. </Viewport3D>
10.
11. <cameras:SceneCamera Name="SceneCamera1"
12. Heading="30"
13. Attitude="-30"
14. Distance="3" IsDistancePercent="True"
15. IsDynamicTarget="True"
16. ShowCameraLight="Auto"/>
17.
18. <ab3d:MouseCameraController TargetCameraName="SceneCamera1"
19. IsMouseWheelZoomEnabled="True"/>
20.
21. <ab3d:CameraControlPanel TargetCameraName="SceneCamera1"
22. VerticalAlignment="Bottom"
23. HorizontalAlignment="Left"/>
24.
25. <ab3d:CameraPreviewPanel TargetCameraName="SceneCamera1"
26. Width="100" Height="100"
27. VerticalAlignment="Bottom"
28. HorizontalAlignment="Right"/>
29. </Grid>
30.</Window>
EventManager3D
EventManager3D類(lèi)是一個(gè)輔助類(lèi),它可是使得用戶(hù)能夠簡(jiǎn)單地預(yù)定3D對(duì)象上的鼠標(biāo)事件。支持一下鼠標(biāo)事件:ouseEnter, MouseLeave, MouseDown, MouseUp, MouseClick, BeginMouseDrag, MouseDrag, EndMouseDrag and MouseDoubleClick。這樣您就不需要做復(fù)雜的3D沖擊測(cè)試了。EventManager3D也是比WPF的ModelUIElement3D更好,因?yàn)樗С指嗟氖髽?biāo)事件(包括鼠標(biāo)在3D中的拖放),提供更好的事件數(shù)據(jù)并保存3D模型的結(jié)構(gòu)。這樣您的編碼更簡(jiǎn)單,更好組織。
下面的代碼顯示的是一個(gè)使用EventManager3D的樣例:
01.
02.ModelEventSource3D eventSource;
03.EventManager3D eventManager;
04.
05.eventManager = new ModelEventSource3D(MainViewport);
06.
07.
08.eventSource = new EventSource3D();
09.eventSource.TargetModel3D = myButton3D;
10.eventSource.MouseClick += new MouseButton3DEventHandler(myButton3D_MouseClick);
11.
12.eventManager.RegisterEventSource3D(eventSource);
13.
14.
15.eventSource = new ModelEventSource3D();
16.eventSource.TargetModel3D = myMovableObject3D;
17.eventSource.BeginMouseDrag += new Mouse3DEventHandler(myMovableObject3D_BeginMouseDrag);
18.eventSource.MouseDrag += new MouseDrag3DEventHandler(myMovableObject3D_MouseDrag);
19.eventSource.EndMouseDrag += new Mouse3DEventHandler(myMovableObject3D_EndMouseDrag);
20.
21.eventManager.RegisterEventSource3D(eventSource);
3D Models
Ab3d.PowerToys庫(kù)還包含一些類(lèi)用于以代碼或XAML來(lái)創(chuàng)建基本的3D模型。它可以創(chuàng)建Plane(平面), Circle(圓), Box(箱), Pyramid(金字塔), Sphere(球), Cone(圓錐)和Cylinder(圓柱)3D模型。
下面的XAML創(chuàng)建了一些3D對(duì)象:WireGrid, 3D Sphere, 3D Box和3D Cone。需要注意的是Sphere也擁有ToolTip定義。另一件有趣的事情是通過(guò)提供的顏色的名字定義Materials.
01.
02.<Page x:Class="Ab3d.PowerToys.Samples.Objects3D.UIElementsToolTipSample"
03. xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
04. xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
05. xmlns:cameras="clr-namespace:Ab3d.Cameras;assembly=Ab3d.PowerToys"
06. xmlns:visuals="clr-namespace:Ab3d.Visuals;assembly=Ab3d.PowerToys"
07. xmlns:uiElements="clr-namespace:Ab3d.UIElements;assembly=Ab3d.PowerToys">
08. <Grid>
09. <Viewport3D Name="MainViewport">
10. <visuals:WireGridVisual3D CenterPosition="0 0 0" Size="70 30"
11. WidthCellsCount="7" HeightCellsCount="3"
12. LineColor="Gray" LineThickness="2"/>
13.
14. <uiElements:SphereUIElement3D CenterPosition="-20 5 0"
15. Radius="5"
16. Material="Green"
17. ToolTip="This is a simple tooltip"/>
18.
19. <uiElements:BoxUIElement3D CenterPosition="20 5 0"
20. Size="10 10 10"
21. Material="Red"/>
22.
23. <visuals:ConeVisual3D BottomCenterPosition="0 0 0"
24. BottomRadius="5" TopRadius="2"
25. Height="10" Segments="6"
26. IsSmooth="False" Material="Blue"/>
27. </Viewport3D>
28.
29. <cameras:SceneCamera Heading="30" Attitude="-20" Bank="0"
30. Distance="100" ShowCameraLight="Always"/>
31. </Grid>
32.</Page>
下面的圖像顯示的是能夠通過(guò)Ab3d.PowerToys創(chuàng)建的幾乎所有的3D對(duì)象。該圖像顯示的3D對(duì)象在Design Time in Visual Studio一直可見(jiàn)。這里還有一些Ab3d.PowerToys項(xiàng)在工具箱中(不幸地是它不能在Toolbox中顯示3D對(duì)象)。屬性編輯器顯示的當(dāng)前被選定的ConeVisual3D的屬性。
下面的圖像時(shí)摘自一個(gè)球形樣例,它顯示的是一個(gè)在3D球形上繪制三角形和法線。對(duì)于該球形的相關(guān)設(shè)置顯示在圖像的右下角。
3D Lines
另外,還支持具有優(yōu)化機(jī)制的3D Lines。它使得為WPF提供更先進(jìn)的和具有更好性能的3Dlines實(shí)現(xiàn)。
Ab3d.PowerToys is the ultimate helper library for work with WPF 3D.
The main parts of the library are:
Cameras, 3D Models and Lines can be defined in XAML. The results are immediately shown in Visual Studio Designer.
With Ab3d.PowerToys programming with 3D cannot be easier!
Cameras and Camera Controllers
The library defines a few new Cameras that can be used instead of the current WPF's cameras. The main difference between Ab3d Cameras and WPF cameras is that Ab3d Cameras does not use Vectors to define the LookDirection, but instead use angles in degrees to define it. This is much more natural. For example if you want to look at the scene a little bit from the right and from above, you just define the Heading to be 30 and Attitude to be -45. You can also define the Distance from the scene. The most important Ab3d Cameras are: SceneCamera, FirstPersonCamera and ThirdPersonCamera. All the Ab3d Cameras with their properties can be seen on the class diagram.
Camera Controllers are used to control the camera. The MouseCameraController can be used to change the angle and distance of the camera with the mouse. This way it is very simple to rotate the camera around. The CameraControlPanel shows nice buttons to rotate the camera and move the camera closer or farther away. There is also a CameraPreviewPanel that graphically shows at which angle the camera is looking at the object or scene.
The following code demonstarates that with only a few lines of xaml a WPF application can use a camera that is showing the whole scene (SceneCamera) and can be rotated by the mouse (MouseCameraController) or by nice buttons (CameraControlPanel). There is also a preview of the camera that is showing from which angle the camera is looking at the scene. Also if the WindGeneratorModel model does not contain a light, a camera light is automatically added to the scene and it is iluminating the scene from the camera's position (ShowCameraLight="Auto").
EventManager3D
The EventManager3D class is a helper class that enables user to simply subscribe to mouse events on 3D objects. The following mouse events are supported: MouseEnter, MouseLeave, MouseDown, MouseUp, MouseClick, BeginMouseDrag, MouseDrag, EndMouseDrag and MouseDoubleClick. This way you do not need to do the complicated 3D hit testing any more. The EventManager3D is also better than WPF's ModelUIElement3D because it supports more mouse events (including mouse drag in 3D), provides better event data and preserves the structure of the 3D models. This way your code is much simpler and better organized.
The following code shows a sample used of EventManager3D:
3D Models
The Ab3d.PowerToys library also contains classes to create basic 3D models in code or XAML. It is possible to create Plane, Circle, Box, Pyramid, Sphere, Cone and Cylinder 3D models.
The following XAML creates some of the 3D objects: WireGrid, 3D Sphere, 3D Box and 3D Cone. Note that the Sphere also has a ToolTip defined. Another interesting thing that is that the Materials are defined only by providing the name of the Color.
The following image shows almost all the 3D objects that can be created with Ab3d.PowerToys. The image shows that the 3D objects are already visible at Design Time in Visual Studio. There are also some Ab3d.PowerToys item in Toolbox (unfortunatlly it is not possible to show 3D objects in Toolbox). The Property Editor shows the properties for the currently selected ConeVisual3D.
The following image is taken from Sphere sample and shows the 3D sphere with drawn triangles and normals. The settings for the sphere are shown on the lower right part of the image.
3D Lines
There is also support for 3D Lines with optimized update mechanism that make the 3D lines implementation the most advanced and with the best performance for WPF.
更新時(shí)間:2022-10-20 10:21:07.000 | 錄入時(shí)間:2010-04-29 15:08:11.000 | 責(zé)任編輯:何家巧
高質(zhì)量2D/3D文檔查看器,提供專(zhuān)業(yè)的瀏覽、編輯和轉(zhuǎn)換功能,支持30多種光柵和矢量圖形格式
軟件清新快速的 dwg 閱讀器,可以瀏覽,查看,測(cè)量,打印 DWG, DXF, DWF 文件
控件Ab3d.DXEngine是可以在.Net Desktop應(yīng)用程序中使用的快速3D渲染引擎
軟件交互式跨平臺(tái)多人在線矢量圖原型繪制軟件
官方微信
官方微博
服務(wù)電話
重慶/ 023-68661681
華東/ 13452821722
華南/ 18100878085
華北/ 17382392642
客戶(hù)支持
技術(shù)支持咨詢(xún)服務(wù)
服務(wù)熱線:400-700-1020
郵箱:sales@evget.com
關(guān)注我們
地址 : 重慶市九龍坡區(qū)火炬大道69號(hào)6幢
慧都科技 版權(quán)所有 Copyright 2003- 2024 渝ICP備12000582號(hào)-13 渝公網(wǎng)安備 50010702500608號(hào)