Laden...

Erben von Model3D (System.Windows.Media.Media3D)

Erstellt von HexEdit vor 5 Jahren Letzter Beitrag vor 5 Jahren 1.252 Views
H
HexEdit Themenstarter:in
38 Beiträge seit 2019
vor 5 Jahren
Erben von Model3D (System.Windows.Media.Media3D)

Mein Problem liegt darin von Model3D zu erben bzw die Klasse zu implementieren


class Model : Model3D
    {
        protected override Freezable CreateInstanceCore()
        {
            //throw new NotImplementedException();
        }

        internal override ResourceHandle AddRefOnChannelCore(Channel channel)
        {
            //throw new NotImplementedException();
        }

        internal override Rect3D CalculateSubgraphBoundsInnerSpace()
        {
            //throw new NotImplementedException();
        }

        internal override Channel GetChannelCore(int index)
        {
            //throw new NotImplementedException();
        }

        internal override int GetChannelCountCore()
        {
            //throw new NotImplementedException();
        }

        internal override ResourceHandle GetHandleCore(Channel channel)
        {
            //throw new NotImplementedException();
        }

        internal override void RayHitTestCore(RayHitTestParameters rayParams)
        {
            //throw new NotImplementedException();
        }

        internal override void ReleaseOnChannelCore(Channel channel)
        {
            //throw new NotImplementedException();
        }
    }

der Fehler liegt darin dass zb die Channel klasse nicht gefunden wird dh rot unterstichen wird. 😦

Ich hoffe ihr könnt mir helfen.
lg HexEdit

4.931 Beiträge seit 2008
vor 5 Jahren

Woher hast du denn die internal override-Methoden her?
Laß diese mal einfach weg...

H
HexEdit Themenstarter:in
38 Beiträge seit 2019
vor 5 Jahren

einfach die abstracte klasse (Model3D) implementiert

(anhang)

3.170 Beiträge seit 2006
vor 5 Jahren

Hallo,

die Methoden sind in der abstrakten Klasse als internal abstract deklariert.
Du kannst also nicht direkt davon erben. Nur Klasen innerhalb der PresentationCore.dll können diese abstrakten Methoden implementieren.

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

H
HexEdit Themenstarter:in
38 Beiträge seit 2019
vor 5 Jahren

Danke erstmal

Aber was meinst du mit "nicht direkt" also kann ich irgendwie "indirekt" davon erben?

3.170 Beiträge seit 2006
vor 5 Jahren

Hallo,

nein, das ist nicht möglich. Du kannst auch nicht von Objekten erben, die von Model3D abgeleitet sind. Die gesamte Vererbungshierarchie ist durch internal oder sealed geschützt.
Du kannst nur die vorhandenen Ableitungen von Model3D benutzen, aber nicht davon erben.

Gruß, MarsStein

Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca

H
HexEdit Themenstarter:in
38 Beiträge seit 2019
vor 5 Jahren

ok schade

Und danke nochmal für die schnelle Antwort

5.657 Beiträge seit 2006
vor 5 Jahren

Warum willst du von dieser Klasse ableiten? Was genau hast du denn vor?

Wenn's um 3D geht, empfehle ich den Helix-Toolkit, da ist eigentlich alles enthalten, was man so braucht. Und Beispiele gibt es auch jede Menge.

Weeks of programming can save you hours of planning