假设我有一个WPF表格来输入管子直径和管子高度,我想要看到用户输入的管子。
我找到了一些3D教程,但它们对我来说太复杂了。希望有人能够启动我的3D理解。如果仅使用XAML可能会很好......:)
答案 0 :(得分:1)
这主要是使用XAML,您创建的对象是长度为1且直径为1的管,然后使用输入的值来适当地缩放管。如果您正在使用MVVM模式,则可以将用户用来输入直径和高度的TextBox绑定到ViewModel中的属性,然后将缩放矩阵绑定到这些值。
对于管子,你需要两组顶点,圆圈上的两个点,例如y = 0且y = 1。对于0到360度/ 2Pi弧度之间的角度,x和z坐标分别是cos(角度)和sin(角度)。使用的值越多,管子就越平滑,10到15就是一个很好的起点。为了使管看起来更光滑,您可以使用共享法线,这会通过捏造灯光来伪装更光滑的侧面。上面示例中顶点的法线与管的底部相同:顶部和底部顶点的cos(角度),0,sin(角度)。要创建描述此形状的XAML,您最好阅读一些XAML 3D引物,这样您就能理解它正在做什么。