![]() ![]() Maybe it could be moved to a global namespace? However, it is placed in Draft for some reason. What is Show exactly? Is it a module to control what? I could investigate this more, but there is some serious lack of documentation.Ī global grid is the most sensible approach, I think, the problem is who is going to implement it, and how.ĭraft's grid's is essentially a global grid, made in Coin. So much work is waiting for coders to do before 0.19 release. add Draft grid a same ability like Blender grid (automatically change size in different view), which feature is also quite useful in all other workbenches. replace Sketcher grid with Draft grid in Sketcher edit mode.Ģ. Since Draft grid in used by more workbenches, to keep Draft grid (and give up Sketcher grid) as the only/solely/centralized/unified FreeCAD grid is a bargain. ![]() If such guess is true, we can learn from Blender's grid.īlender grid treat tilted/ortho view in different way, it convers limited square in tilted 3d view, but covers unlimited area in ortho view. The possible reason might be Draft grid ony cover a limited size (predefined in pref), which is not suitable to work on ortho view. Then, the conflict can be resolved nicely, without Draft having to know about Sketcher and Sketcher having to know about Draft.Īs for no.2, is it possible to restore previous Draft grid status (if Draft grid was on) when exit Sketcher edit mode? Though it is not a must.Īs for no.3, I am thinking, why Sketcher developer decided not use Draft grid directly, if as vox said, Draft grid is "core" function of FreeCAD. But with some caveats, obviously: sometimes, one might want the grid to stay.Ģ) In Draft wb, add an observer that senses when an object enters edit mode, and if it's not Draft object, turn off the grid.ģ) add a centralized App-based grid feature (or, maybe, Show-based?), and make Draft and Sketcher use it, instead of their own implementations. Simple, easy, no cross-module dependency. I can think of three ways of solving it.ġ) Draft workbench should hide its grid when deactivated. IMO, it is not the right solution - at least, Werner will call it spaghetti code and will probably not accept it. Then to restore, ViewProviderSketch::unsetEdit. Gui::Command::runCommand(Gui::Command::Gui, cmdstr_bytearray) QByteArray cmdstr_bytearray = cmdstr.toLatin1() ![]() QString::fromLatin1(editSubName.c_str())) QString::fromLatin1(Gui::Command::getObjectCmd(editObj).c_str()), QString::fromLatin1(getSketchObject()->getNameInDocument()), ).arg(QString::fromLatin1(getDocument()->getDocument()->getName()), " tv.show( for ref in ActiveSketch.ExternalGeometry])\n" " tv.show( for ref in ActiveSketch.Support if not ref.isDerivedFrom(\"PartDesign::Plane\")])\n" "tv = Show.TempoVis(App.ActiveDocument, tag= )\n" ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |