Olivier Eckmann Posté(e) le 2 juillet 2014 Posté(e) le 2 juillet 2014 Bonjour, je m'énerve depuis hier sur la restauration des états de calques par fenêtre dans les présentations en .Net. Je suis l'exemple fourni dans la doc .net using Autodesk.AutoCAD.Runtime; using Autodesk.AutoCAD.ApplicationServices; using Autodesk.AutoCAD.DatabaseServices; [CommandMethod("RestoreLayerState")] public static void RestoreLayerState() { // Get the current document Document acDoc = Application.DocumentManager.MdiActiveDocument; LayerStateManager acLyrStMan; acLyrStMan = acDoc.Database.LayerStateManager; string sLyrStName = "ColorLinetype"; if (acLyrStMan.HasLayerState(sLyrStName) == true) { acLyrStMan.RestoreLayerState(sLyrStName, ObjectId.Null, 1, LayerStateMasks.Color | LayerStateMasks.LineType); } } A prori le 2ème argument est l'id de la viewport dans laquelle on souhaite restaurer l'état de calque nommé, extrait de l'aide : "The first value is the name of the layer state to restore, and the second value is the object id of the viewport whose layer settings you want to restore." Cependant le code précédent fait apparaître un ObjectId null en tant que paramètre.Moi je l'ai remplacé par l'objectid de ma fenêtre, mais rien n'y fait. L'état de calque est restauré dans la viewport courante. C'est à dire que si je suis sur l'onglet Objet, l'état est restauré dans mon espace objet, si je suis sur un onglet de présentation, l'état de calque est restauré dans la viewport "Espace papier" , mais pas dans l'objet Viewport dessiné. Ceci confirmerait que le second paramètre ne sert à rien et n'a pas été implémenté dans l'API (ObjectId.null). ce qui est fort dommage. Est-ce que quelqu'un s'est déjà attaqué avec succès à la restauration d'un état de calque via le LayerStateManager? Merci Olivier
Olivier Eckmann Posté(e) le 11 juillet 2014 Auteur Posté(e) le 11 juillet 2014 Bonjour, Quelques nouvelles en provenance du post que j'ai aussi fait sur les forum US ici. A priori c'est un bug dans l'API qui a été transmis aux développeurs d'Autodesk. Il va falloir que je trouve un contournement. Olivier
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant