3DTools/README.txt

(开头部分) 11KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

This README gives a brief overview of the major classes used to enable 
interactive 2D on 3D, a high level overview of how it works, 
as well as a list of known issues and changes that can be made to get 
around them.

---------------
Class Overview:
---------------
There are three main classes that are used to enable interacting with 2D 
content on 3D objects: Viewport3DDecorator, Interactive3DDecorator and 
InteractiveVisual3D.  As a client of the 2D on 3D code, only Interactive3DDecorator 
and InteractiveVisual3D need to be used.  These three classes are explained next.

Viewport3DDecorator:
--------------------
The Viewport3DDecorator is used to extend the functionality of a Viewport3D.  
It does so by allowing UIElements to be placed in front of and behind the 
Viewport3D that is being decorated.  This enables, for instance, the 
Interactive3DDecorator to place its hidden layer on top of the Viewport3D it 
is decorating, or the trackball to put a pane of glass beneath the Viewport3D 
it is decorating, so it can be notified when the mouse is clicked within 
the bounds of the Viewport3D.  The UIElements that occur in front of and behind the 
Viewport3D are exposed via the PreViewportChildren and PostViewportChildren dependency 
properties.  The Viewport3D or Viewport3DDecorator that is decorated is exposed 
via the Content property of the class.  The class takes care of laying out all 
of its children, but this can be overridden by derived classes if desired.    

Interactive3DDecorator:
-----------------------
The Interactive3DDecorator is a subclass of the Viewport3DDecorator, and uses 
its PostViewportChildren property to position the hidden visual layer which 
actually provides the interaction.  This class provides interactivity to a Viewport3D.  

In XAML, the Interactive3DDecorator is used as follows:

<local:Interactive3DDecorator>
	<Viewport3D>
		?
	</Viewport3D>
</local:Interactive3DDecorator>

InteractiveVisual3D:
--------------------
The final class, the InteractiveVisual3D, is used to create the interactive 3D content 
and also to signal to the Interactive3DDecorator that this Visual3D is intended to 
be interacted with.  InteractiveVisual3D is a subclass of ModelVisual3D and provides 
the following dependency properties:

?Geometry      - The Geometry3D that is to become the content of the InteractiveVisual3D.
?Visual        ?The Visual that is to be used in a VisualBrush, which will then 
					be used in a material for the geometry for the InteractiveVisual3D.
?Material      ?A user specified material, with the IsInteractiveMaterial attached 
					property being used to mark the locations where the user wants the 
					VisualBrush used to represent the Visual, to be placed.  By default, 
					a DiffuseMaterial is used.
?IsBackVisible ?Indicates whether the material used for the front face should also be 
					mirrored on the back face.

The first two properties, Geometry and Visual, are the primary ones needed.  They allow 
the geometry for the Visual3D to be set, as well as the Visual that should appear on that 
后面还有 122 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。