Bonjour,

j'utilise SharpDX et plus précisement Direct2D1 pour dessiner en 2D des polygones avec DirectX. Lorsque j'ajoute des points a mon polygon je souhaite mettre à jour la GeometrySink avec ce petit bout de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
public void UpdateGeometry() {
            int i;
 
            if (Geometry == null) {
                Geometry = SPolygonRenderer.GetGeometryPath();
            }
 
            var pathSink = Geometry.Open();
            pathSink.SetSegmentFlags(PathSegment.ForceRoundLineJoin); 
 
            pathSink.BeginFigure(PolygonPoints[0], IsClosed ? FigureBegin.Filled : FigureBegin.Hollow);
            for (i = 1; i < PolygonPoints.Count; ++i) {
                pathSink.AddLine(PolygonPoints[i]);
            }
            pathSink.EndFigure(IsClosed ? FigureEnd.Closed : FigureEnd.Open);
            pathSink.Close();
        }
qui me remonte une erreur :

Une exception de première chance de type 'SharpDX.SharpDXException' s'est produite dans SharpDX.DLL
Une exception de type 'SharpDX.SharpDXException' s'est produite dans SharpDX.DLL mais n'a pas été gérée dans le code utilisateur
Informations supplémentaires*: HRESULT: [0x88990001], Module: [SharpDX.Direct2D1], ApiCode: [D2DERR_WRONG_STATE/WrongState], Message: L’objet n’était pas dans l’état approprié pour traiter la méthode.

je débute avec SharpDX et DirectX du coup je suis un peu perdu et ne sais pas pourquoi l'objet n'est pas dans l'état approprié.

Merci d'avance