代码之家  ›  专栏  ›  技术社区  ›  Dominic Jonas

在Visual Studio 2017中使用3D波前OBJ/STL

  •  1
  • Dominic Jonas  · 技术社区  · 8 年前

    我想导入 Wavefront OBJ 或 STL 文件到我的 C# WPF 应用

    在旧帖上有我不能再使用的演练。

    是否不再可以“轻松”导入这些文件并在中使用 VisualStudio/Blend 2017 ?


    我找到了一个教程 HelixToolkit.WPF 并成功导入了一些文件:

    但对我来说,这似乎不是一个完美的方式。我想做的是从 SolidWorks ,将它们放入我的应用程序中,并创建我的机器的三维可视化。

    应该可以在中查看我的对象 designTime 哦!

    0 回复  |  直到 8 年前
        1
  •  1
  •   P.Roger    5 年前

    我使用Scichart WPF将一些Solidworks部件导入WPF,使用起来有点棘手,但你会得到你想要的,但Scichart无法制作动画,你只能试用30天。 以下是一个示例:

    <s3D:SciChart3DSurface Name="sciChart3DSurface"
                       Grid.Column="1"
                       WorldDimensions="250,1,250">
    
    <s3D:SciChart3DSurface.Resources>
        <!--  The 3D chess objects models which are used in this example were created by Fabio Valle, objects are used for  -->
        <!--  demonstrating purposes only to show possibility how to load and manipulate the 3D objects on 3D scene. Fabio's email: fabiovalle3d@gmail.com  -->
        <object:ObjectModelSource x:Key="PawnLowObj3DSource" Source="pack://application:,,,/SciChart.Examples.ExternalDependencies;component/Resources/Objects/Pawn_Low.obj"/>
        <object:ObjectModelSource x:Key="BishopLowObj3DSource" Source="pack://application:,,,/SciChart.Examples.ExternalDependencies;component/Resources/Objects/Bishop_Low.obj"/>
        <object:ObjectModelSource x:Key="KingLowObj3DSource" Source="pack://application:,,,/SciChart.Examples.ExternalDependencies;component/Resources/Objects/King_Low.obj"/>
        <object:ObjectModelSource x:Key="KnightLowObj3DSource" Source="pack://application:,,,/SciChart.Examples.ExternalDependencies;component/Resources/Objects/Knight_Low.obj"/>
        <object:ObjectModelSource x:Key="QueenLowObj3DSource" Source="pack://application:,,,/SciChart.Examples.ExternalDependencies;component/Resources/Objects/Queen_Low.obj"/>
        <object:ObjectModelSource x:Key="RookLowObj3DSource" Source="pack://application:,,,/SciChart.Examples.ExternalDependencies;component/Resources/Objects/Rook_Low.obj"/>
        <object:Rotation3D x:Key="ObjRotationState" Axis="YAxis" Angle="180" />
        <object:TextureSource x:Key="BlackTexture" Source="pack://application:,,,/SciChart.Examples.ExternalDependencies;component/Resources/Objects/BlackWoodTexture.jpg" />
        <object:TextureSource x:Key="WhiteTexture" Source="pack://application:,,,/SciChart.Examples.ExternalDependencies;component/Resources/Objects/WhiteWoodTexture.jpg" />
    </s3D:SciChart3DSurface.Resources>
    
    <s3D:SciChart3DSurface.SceneObjects>
        <!--  The 3D chess objects models which are used in this example were created by Fabio Valle, objects are used for  -->
        <!--  demonstrating purposes only to show possibility how to load and manipulate the 3D objects on 3D scene. Fabio's email: fabiovalle3d@gmail.com  -->
        ...
        <object:ObjectModel3D TextureSource="{StaticResource BlackTexture}" Source="{StaticResource RookLowObj3DSource}" Position="0.0625, 0.6, 0.9375" CoordinateMode="Relative" Scale="0.2, 0.2, 0.2"/>
        <object:ObjectModel3D TextureSource="{StaticResource BlackTexture}" Source="{StaticResource KnightLowObj3DSource}" Position="0.0625, 0.6, 0.8125" CoordinateMode="Relative" Scale="0.2, 0.2, 0.2" Rotation="{StaticResource ObjRotationState}"/>
        <object:ObjectModel3D TextureSource="{StaticResource BlackTexture}" Source="{StaticResource BishopLowObj3DSource}" Position="0.4375, 0.6, 0.3125" CoordinateMode="Relative" Scale="0.2, 0.2, 0.2" Rotation="{StaticResource ObjRotationState}"/>
        <object:ObjectModel3D TextureSource="{StaticResource BlackTexture}" Source="{StaticResource KingLowObj3DSource}" Position="0.0625, 0.6, 0.5625" CoordinateMode="Relative" Scale="0.2, 0.2, 0.2"/>
        <object:ObjectModel3D TextureSource="{StaticResource BlackTexture}" Source="{StaticResource QueenLowObj3DSource}" Position="0.0625, 0.6, 0.4375" CoordinateMode="Relative" Scale="0.2, 0.2, 0.2" Rotation="{StaticResource ObjRotationState}"/>
        <object:ObjectModel3D TextureSource="{StaticResource BlackTexture}" Source="{StaticResource BishopLowObj3DSource}" Position="0.0625, 0.6, 0.3125" CoordinateMode="Relative" Scale="0.2, 0.2, 0.2" Rotation="{StaticResource ObjRotationState}"/>
        <object:ObjectModel3D DrawBoundingBox="True" BoundingBoxStroke="White" TextureSource="{StaticResource BlackTexture}" Source="{StaticResource KnightLowObj3DSource}" Position="0.3125, 0.6, 0.3125" CoordinateMode="Relative" Scale="0.2, 0.2, 0.2" Rotation="{StaticResource ObjRotationState}"/>
        <object:ObjectModel3D TextureSource="{StaticResource BlackTexture}" Source="{StaticResource RookLowObj3DSource}" Position="0.0625, 0.6, 0.0625" CoordinateMode="Relative" Scale="0.2, 0.2, 0.2"/>
        ...
    </s3D:SciChart3DSurface.SceneObjects>
    

    </s3D:SciChart3DSurface>

    这是一张演示图片: enter image description here