Sketcher: Vincoli di supporto
Panoramica

Il vincolo di supporto è un normale vincolo di Sketcher che viene richiesto come parte di un vincolo più complesso, ed è mostrato nell'interfaccia per aiutare l'utente a gestire le ridondanze. Ad esempio, nel vincolo di Rifrazione, le due linee che rappresentano i raggi di luce devono essere collegate tra di loro con il vincolo di Coincidenza applicato nei punti finali, e la congiunzione deve trovarsi sull'interfaccia con il vincolo Punto su oggetto.
Quando sono necessari, i vincoli di supporto sono aggiunti automaticamente. Attualmente la decisione se sono necessari viene presa valutando l'errore del vincolo di supporto per lo stato attuale della geometria, ma questo potrebbe cambiare nelle future versioni. Se l'errore è sufficientemente piccolo, il vincolo è considerato inutile, e non viene aggiunto. In alcuni casi, questa logica può portare ad errori; ad esempio, il vincolo può essere soddisfatto per caso, e questo può accadere facilmente quando in Sketcher è attiva la funzione "Aggancia alla griglia".
Se manca un vincolo di supporto, e le condizioni richieste non sono soddisfatte in altro modo, il "vincolo complesso" sarà difettoso. Si ottiene qualcosa di imprevedibile. Il vincolo difettoso può essere riparato aggiungendo manualmente il vincolo di supporto mancante.
Attualmente, i vincoli di supporto sono necessari per i seguenti vincoli:
- Vincolo tangente o collineare nel modo "tangenza in un punto" sono necessari due vincoli "Punto su oggetto"
- Vincolo perpendicolare nel modo "perpendicolare in un punto" sono necessari due vincoli "Punto su oggetto"
- Vincolo angolare nel modo "angolo in un punto" sono necessari due vincoli "Punto su oggetto"
- Vincolo rifrazione (Legge di Snell) sono necessari un vincolo "Coincidenza" e un vincolo "Punto su oggetto"
Script
Quando i vincoli che richiedono dei supporti sono aggiunti tramite gli script Python, i vincoli di supporto non vengono aggiunti automaticamente. In uno script si può replicare la decisione presa automaticamente dai comandi della UI testando le seguenti funzioni, che sono state aggiunte specificamente per questo scopo e che sono usate nelle routine dell'interfaccia:
Sketch.isPointOnCurve(icurve,x,y)
isPointOnCurve verifica se un punto virtuale, dato dalle coordinate x,y (virgola mobile) dello schizzo, è idoneo per soddisfare un virtuale vincolo di punto su oggetto - cioè si trova sulla curva specificata dalla curva di indice icurve. Restituisce True se il punto è sulla curva, e False se non lo è.
Sketch.calculateConstraintError(iconstr)
calculateConstraintError valuta una funzione di errore di un vincolo specificato dal suo indice iconstr nello schizzo. Se nel vincolo vi è una sola funzione di errore, il valore restituito è il valore restituito firmato della funzione di errore. Se al vincolo è associata più di una funzione di errore (cioè il vincolo rimuove più di un grado di libertà), il valore restituito è la radice della media del quadrato (RMS) di tutte le funzioni di errore (sempre positivo).
- General: New Sketch, Edit Sketch, Attach Sketch, Reorient Sketch, Validate Sketch, Merge Sketches, Mirror Sketch, Leave Sketch, Align View to Sketch, Toggle Section View, Stop Operation, Grid, Snap, Rendering Order
- Geometries: Point, Polyline, Line, Arc From Center, Arc From 3 Points, Elliptical Arc, Hyperbolic Arc, Parabolic Arc, Circle From Center, Circle From 3 Points, Ellipse From Center, Ellipse From 3 Points, Rectangle, Centered Rectangle, Rounded Rectangle, Triangle, Square, Pentagon, Hexagon, Heptagon, Octagon, Polygon, Slot, Arc Slot, B-Spline, Periodic B-Spline, B-Spline From Knots, Periodic B-Spline From Knots, Toggle Construction Geometry
- Constraints:
- Dimensional Constraints: Dimension, Horizontal Dimension, Vertical Dimension, Distance Dimension, Radius/Diameter Dimension, Radius Dimension, Diameter Dimension, Angle Dimension, Lock Position
- Geometric Constraints: Coincident Constraint (Unified), Coincident Constraint, Point-On-Object Constraint, Horizontal/Vertical Constraint, Horizontal Constraint, Vertical Constraint, Parallel Constraint, Perpendicular Constraint, Tangent/Collinear Constraint, Equal Constraint, Symmetric Constraint, Block Constraint, Refraction Constraint
- Constraint Tools: Toggle Driving/Reference Constraints, Toggle Constraints
- Sketcher Tools: Fillet, Chamfer, Trim Edge, Split Edge, Extend Edge, External Projection, External Intersection, Carbon Copy, Select Origin, Select Horizontal Axis, Select Vertical Axis, Move/Array Transform, Rotate/Polar Transform, Scale, Offset, Mirror, Remove Axes Alignment, Delete All Geometry, Delete All Constraints, Copy Elements, Cut Elements, Paste Elements
- B-Spline Tools: Geometry to B-Spline, Increase B-Spline Degree, Decrease B-Spline Degree, Increase Knot Multiplicity, Decrease Knot Multiplicity, Insert Knot, Join Curves
- Visual Helpers: Select Under-Constrained Elements, Select Associated Constraints, Select Associated Geometry, Select Redundant Constraints, Select Conflicting Constraints, Toggle Circular Helper for Arcs, Toggle B-Spline Degree, Toggle B-Spline Control Polygon, Toggle B-Spline Curvature Comb, Toggle B-Spline Knot Multiplicity, Toggle B-Spline Control Point Weight, Toggle Internal Geometry, Switch Virtual Space
- Additional: Sketcher Dialog, Preferences, Sketcher scripting
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Assembly, BIM, CAM, Draft, FEM, Inspection, Material, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub