【问题标题】:Helix3d WPF draw text at the top/left of HelixViewport3DHelix3d WPF 在 HelixViewport3D 的顶部/左侧绘制文本
【发布时间】:2022-10-25 02:44:18
【问题描述】:

我想在 HelixViewport3D 的顶部/左侧显示一些文本信息,例如“ShowCameraInfo”,它在视口的底部/左侧显示相机信息。 BillboardTextVisual3D 需要一个 3D 点,但我想要的就像 Canvas 上的 TextBlock 一样,只需要一个 2D 坐标。 我可以使用 TextBlock,但它不能作为 HelixViewport3D 的一部分被捕获。 任何想法?

【问题讨论】:

    标签: wpf helix-3d-toolkit


    【解决方案1】:

    从字面上看,放置在 HelixViewport3D 上的 Textblock 应该是您需要的。

    只有一个问题:如果您尝试通过在 Stackpanel 上单击鼠标来操作相机,Viewport 将无法识别。

    <Grid>       
        <hx:HelixViewport3D>
            <hx:DefaultLights/>
            <hx:CubeVisual3D SideLength="7"/>
            <hx:CubeVisual3D SideLength="5" Fill="Red" Center="-5,3,0"/>
        </hx:HelixViewport3D>
    
        <StackPanel Margin="5" HorizontalAlignment="Left" VerticalAlignment="Top">
            
            <StackPanel.Background>
                <SolidColorBrush Color="#FFB6B6B6" Opacity="0.4"/>
            </StackPanel.Background>
    
            <TextBlock Text="asdhfasdvfmnas" Margin="5,2"/>
            <TextBlock Text="mvcbnxcvjhbkdaf" Margin="5,2"/>
            <TextBlock Text="vbkjsdvj" Margin="5,2"/>
    
        </StackPanel>
    </Grid>
    

    【讨论】: