Frage

Wenn ich Viewport3D innerhalb Leinwand meines Viewport3D setzen ist nicht mehr sichtbar. Wenn ich entfernen Leinwand dann ist Viewport3D wieder sichtbar. Was ich falsch?

          <Canvas  Width="900" Height="524">
            <Viewport3D Name="mainViewport" ClipToBounds="True" HitTestVisible="False">
                        <Viewport3D.Camera>
                            <PerspectiveCamera 
                              FarPlaneDistance="3500"
                              LookDirection="0,0,1"
                              UpDirection="0,1,0"
                              NearPlaneDistance="1" 
                              Position="0,0,0" 
                              FieldOfView="66" />
                        </Viewport3D.Camera>
                        <ModelVisual3D>
                            <ModelVisual3D.Content>
                                <AmbientLight Color="White" />
                            </ModelVisual3D.Content>
                        </ModelVisual3D>
                    </Viewport3D>
            </Canvas>
War es hilfreich?

Lösung

Ich denke, die Viewport3D wird in der oberen linken Ecke der Leinwand mit einer Breite und Höhe von 0 am Ende da Canvas nie seine Kinder erstreckt. Versuchen Sie Canvas.Left und Canvas.Top bei der Positionierung Ihrer Wahl hinzuzufügen und fügen Sie dann die Breite und Höhe für Ihre Viewport3D. Wenn Sie Ihren Viewport3D wollen immer den verfügbaren Raum füllt dann Canvas ist der falsche Weg zu gehen.

<Canvas Width="900" Height="524">
    <Viewport3D Canvas.Left="100"
                Canvas.Top="100"
                Width="200"
                Height="200"
                Name="mainViewport"
                ClipToBounds="True" 
                IsHitTestVisible="False">
        <Viewport3D.Camera>
            <PerspectiveCamera  
                        FarPlaneDistance="3500" 
                        LookDirection="0,0,1" 
                        UpDirection="0,1,0" 
                        NearPlaneDistance="1"  
                        Position="0,0,0"  
                        FieldOfView="66" />
        </Viewport3D.Camera>
        <ModelVisual3D>
            <ModelVisual3D.Content>
                <AmbientLight Color="White" />
            </ModelVisual3D.Content>
        </ModelVisual3D>
    </Viewport3D>
</Canvas>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top