Macros recipes/de

Diese Seite enthält Makros, mit denen die Funktionen von FreeCAD erweitert werden können.

Wenn Du ein Makro geschrieben hast und es in die Kategorien dieser Seite aufnehmen möchtest, siehe die Makro-Dokumentation für mehr Informationen zur Dokumentation des Makros.

[[File:Part_CheckGeometry.svg]] 3D Ansicht Abläufe

 * : dreht die aktuelle Ansicht um 90° nach links; funktioniert nur in der [[Image:View-top.svg|Std_ViewTop|16px|link=Std_ViewTop/de]] Std Draufsicht.
 * : dreht die aktuelle Ansicht in axonometrischer Ansicht.
 * : wird in der Pythonkonsole verwendet und dreht die aktuelle Ansicht im angegebenen Winkel und der angegebenen Ebene.
 * : Bietet eine grafische Benutzeroberfläche (GUI), die eine Drehung der Ansicht um präzise Beträge in alle drei Richtungen ermöglicht.
 * : Mit diesem Makro können Sie vorübergehend ein Texturbild auf die ausgewählten Objekte legen.
 * : Dieses kleine Makro verwandelt den Pfeil der Maus in ein Präzisionskreuz.
 * : Dieses Makro verschiebt die Position eines Objekts so, dass ein ausgewählter Ort zu seinem neuen Ursprung wird.
 * : Dieses Makro richtet die aktuelle Ansicht an einer ausgewählten Fläche aus.
 * : Dieses Makro richtet das ausgewählte Objekt an der aktuellen Ansicht aus und setzt die Koordinaten der Kamera.
 * : Dieses Makro richtet die Kamera an der aktuellen Entwurf Wähle Ebene Ebene aus.
 * : Dieses Makro verschiebt die aktuelle Entwurf Wähle Ebene-Eben in die Mitte der aktuellen Ansicht.
 * : Dieses Makro richtet die Fläche des ausgewählten Objekts an der aktuellen Ansicht aus (bei Flächenbohrungen wird die Bohrung an der Ansicht positioniert).
 * : Dieses Makro schaltet die Sichtbarkeit der verschiedenen unterstützenden Fenster in FreeCAD um, so dass das Hauptfenster mit dem gesamten verfügbaren Platz auf dem Bildschirm angezeigt werden kann.
 * : This macro can rotate the screen in a defined angle and the defined axis and creates a plan to face the screen to create a form in the specified plan positions the selected face facing the screen, to detect the position of the camera.
 * : Satz von drei Makros, Makro 1: versteckt die nicht ausgewählten Objekte, Makro 2: zeigt alle Objekte an, Makro 3: versteckt alle Objekte.
 * : Dieses Makro prüft, ob alle Objekte im Dokument sichtbar sind (Visibility=True).
 * : Dieses Makro prüft, ob alle Objekte im Dokument ausgeblendet sind (Visibility=False).
 * :Alle nicht ausgewählten Objekte werden gelöscht !!.
 * : Satz von zwei Makros, Makro 1:Macro_Toggle_Visibility2_1-2 versteckt die nicht ausgewählten Objekte, Makro 2:Macro_Toggle_Visibility2_2-2 zeigt alle Objekte an, Makro mit der ursprünglichen Sichtbarkeit.
 * : Set of two macro, macro 1:Macro_Toggle_Visibility2_1-2 hidden the objects not selected, macro 2:Macro_Toggle_Visibility2_2-2 displayed alls objects, macro with the original visibility.
 * : Alle sichtbaren Objekte in der Baumstruktur werden ausgewählt.
 * : Mit diesen beiden Makros können Sie den Navigationsstil auf 'CAD' ändern.
 * : Mit diesen beiden Makros können Sie den Navigationsstil auf 'Inventor' ändern.
 * : Dieses Makro prüft, ob eine Auswahl doppelt ist. Ein Objekt in der 3D-Ansicht wählen. Der "ForbiddenCursor" bleibt, wenn die Auswahl doppelt ist. Das Makro bleiben resident.
 * : kopiert den Inhalt der 3D-Ansicht in der Größe 640, 480 px in die Zwischenablage.
 * : Dieses Makro positioniert Ihr Objekt senkrecht zum ausgewählten Draht.
 * : Makro zum Drehen eines Objekts um sich selbst, wobei die Drehachse das Zentrum der Boundbox, das Zentrum der Masse oder der letzte angeklickte Punkt ist.
 * : Dieses Makro wählt eine Fläche, eine Kante oder einen Scheitelpunkt aus, wenn Sie mit der Maus darüber fahren.
 * : dieses Makro erweitert die Auswahl der Elemente in der Baumansicht. Wenn keines ausgewählt ist, werden alle Elemente aufgeklappt/zusammengeklappt.
 * : Dieses Makro zeigt alle Elemente an, die unterhalb des Cursors liegen. Elemente, die von anderen Elementen verdeckt werden, werden ebenfalls angezeigt.
 * : Dieses Makro zeigt alle Elemente an, die unterhalb des Cursors liegen, wie bei "Macro Mouse over cb", jedoch mit graphischer Benutzeroberfläche GUI. Elemente, die von anderen Elementen verdeckt werden, werden ebenfalls angezeigt.
 * : spezielles Makro für den Wiki-Autoren. Dieses Makro erlaubt es, die 3D-Ansicht im gewünschten Format zu speichern. Die 3D-Ansicht oder das volle 3D-Fenster von FreeCAD nimmt die gewünschten Abmessungen an.
 * : Dieses Makro setzt die Position der Symbolleisten zurück.
 * : 1:1-Zoom, damit Objekte in ihrer tatsächlichen Größe auf dem Bildschirm erscheinen.

[[File:Draft_FlipDimension.svg]] Animation

 * : Animieren Sie Ihr Modell, indem Sie seine Eigenschaften mit diesem Python-Objekt animieren.
 * : Rotationsstange und Kolben.
 * : Simulation einer Feder.
 * : Scharnier öffnen und schließen.
 * : Baugruppe animieren.
 * : Winkelbeschränkung in Sketcher animieren.
 * : Simulation der Bewegungen eines 3D-Druckers.
 * : Einfache Beispielanimation von 'Entwurf Drähte' durch die Verwendung von Ausdrucken um viele Drähte zu assoziieren und die Bewegung zu simulieren oder zu überprüfen. Hier erzeugt eine kreisförmige Drehung die Bewegung für alle verbundenen Objekte (Dieses Makro läuft mit FreeCAD Version 0.16).

[[File:Applications-python.svg]] Code und Skripten

 * : shows how to give information to the user through the GUI.
 * : example of using Qt commands, their connections, extraction and data assignment.
 * : This macro provides a cut/copy/paste workspace for Python code, it is segmented so different sections can be selected and it is persistent between FreeCAD sessions.
 * : This macro provides a utility to assemble a project from sub-project files using the Merge Project facility.
 * : This macro facilitates the user selecting global variables and monitoring their values.
 * : creates a copy of each selected object and sets its properties to an expression linking to the original object, making it an explicit and editable clone.
 * [[Image:Text-x-python.png|24px]] scanObjects: inspection tool for FreeCAD macro development and project debug.


 * : This macro is only used by programmers Test characters ASCII over 127.

[[File:Arch_MeshToShape.svg]] Umwandlung

 * : Extracts boundary wires from selected meshes
 * : converts selected meshes to parts
 * : Converts selected parts to VRML meshes for small size and faster loading (VRML models Kicad and Blender compatible)
 * : Converts the selected Face to a single Sketch without constraints.
 * : Import Black and White BMP images into FreeCAD as sketch, wire, or solid or Grayscale BMP for lithophanes.
 * : This macro create boolean operation with the objects selected just select the wires give the thickness and click "Create"
 * : Make a compound out of a part with a copy of all its shapes.
 * : MultiCopy allows the duplication (copy and paste) of multiple FreeCAD objects that can be labelled sequentially and in a custom manner.
 * : Imports a 3DXML-ascii file into FreeCAD, limited functionality.
 * : Imports an iges file with entity 128, for example an iges-file from FreeShip, into FreeCAD.

[[File:Drawing-orthoviews.svg]] Arbeitsbereich Zeichnung
Der Arbeitsbereich Zeichnung wird seit der FreeCAD-Version 0.17 als veraltet betrachtet. Stattdessen sollte der Arbeitsbereich TechDraw verwendet werden.


 * : allows the user to get the view of his object in a drawing with 4 different position (front,top,iso,right). Needs some modification to be perfectly effective
 * : This GUI macro to fill simply all fields of the cartridge of the plan implementation worksheet FreeCAD, the format of the date and the symbol of the projection mode adapt to the EU region or US selected.
 * : This GUI macro to fill simply all fields of the cartridge templates_Full of the plan implementation worksheet FreeCAD, the format of the date and the symbol of the projection mode adapt to the EU region or US selected.
 * : This GUI macro to fill simply all fields of the cartridge model 2 of the plan implementation worksheet FreeCAD.
 * : Get the normal vector of a preselected face for creating a drawing view normal to that face

[[File:Draft_BSpline.svg]] Dxf 2D Entwurf

 * : creates a parametric rectellipse
 * : creates a circle on 3 selected points, the points can be objects (this example brings together the two examples below, all parameters simply settle on a graphic window).
 * : creates a circle from 3 selected points 2D orthogonal
 * : creates a circle from 3 selected points in the space 3D
 * : creates a arc from 3 selected points
 * Makes an ellipse by selecting three points (in this order): centre, major radius and minor radius
 * : this macro convert the object line, wire in line Dash, DashDot, DashDotDot,ZigZag and Hand with the dimensions given.
 * : Converts the selected Edges to a circular Arc if possible. Useful for restoring discretized arcs.
 * : This macro create face from a DXF file, the "Layer" are recognized separate and trained in groups.
 * : This macro converts selected elements of imported dxf to face and sketch.
 * : Draf command set in a small macro for the 2D sketch example: work with the DXF files.
 * : Macro utility for create unique wire with many wires, the type wire created is selected to MakeWire, Bspline, BsplineCurve, BsplineCurve + Arc, Polygon, Bezier curve

[[File:Fem_ResultDisplacement.svg]] FEM

 * : Create FEM Meshes by GMSH Mesh Generator
 * : This macro exports multiple FEM result objects from a transient analysis to the VTK format and generates a PVU file which can be used to load the results directly into ParaView for post-processing.

[[File:Part_Measure_Clear_All.svg]] Info und Messungen

 * : Finds the intersection between 2 or 3 selected edges/faces, works with Datum Planes and Datum Lines also. Creates a parametric feature python object containing the shape of the intersection.
 * : Gives a series of information about the selected shape and can display a conversion of length, inclination (degrees, radian, grade) shape, surface, volume and the weight of the form in the density selected in various international and Anglo-Saxon units
 * : Gives a series of information about the selected shape as FCInfo in a mini ToolBar
 * : same as above, but for Linux (obsolete)
 * : Gives a series of information about the selected shape and displayed in screen 3D
 * : Provide informations coordinates, length and angles in real time on the mouse in a bubble annotation displayed in the 3D screen
 * : Gives the Delta values and the distance between 2 points
 * : User-friendly "Info" module created by a FreeCAD user
 * : This macro generates a listing of all objects in the current document - the list can be in a window or on the Report view.
 * : Compute the radius of a circle by 3 points or a circular edge.
 * : Gives the total mass and the center of mass of multiple objects selected with the density chosen.
 * : Display in a concise way basic physical properties of an object (volume, bound box dimensions, ...)

[[File:Draft_VisGroup.svg]] Bibliotheken

 * : This macro creates a screw with or without thread, according to ISO standards (screw_maker1_6.py.zip with Pyside support). (Screw Maker 2.0 - new version!)
 * : The aim of BOLTS is to build a free and open-source standard parts library for CAD applications.
 * : Starts the Parts library browser

[[File:Bound-expression.svg]] Mathematische Funktionen
equations.
 * : Feature python update of Macro 3D Parametric Curve.
 * : Draw a function described by parametric equations x(t), y(t) and z(t).
 * : draws a function described by an equation z=F(x)
 * : Based on the above macro, but for parametric and optionally polar
 * : Tool utility : Tab > Wire > Curves And Surfaces

[[File:IFC.svg]] Multifunktional

 * : zur Erstellung von Achsenplänen, Ebenen aus 3 Punkten, Achsen auf einer Form, Informationen über die Koordinaten der Form und viele andere nützliche Funktionen zur Erleichterung beim Erstellen Ihres Projekts. Dieses Werkzeug wird demnächst in der Combo-Ansicht zu finden sein.

[[File:Workbench_Image.svg]] Objekterstellung

 * : creates a rectangular cuboid from 4 points
 * : creates a solid by sweeping a 2D profile along a trajectory previously selected in the 3D view. The 2D elements can be created through the regular tools in FreeCAD's GUI.
 * : This macro creates a geodesic dome shell
 * : This macro creates a parametric pyramid. All parameters are customizable just like with Part Cone.
 * : This macro creates parametric polyhedrons (dodecahedron, icosahedron, tetrahedron, ...). Customizable via radius or side.
 * : Create a line giving coordinate XYZ length and angle to plane X Y
 * : Cut a line and create x points, giving the number of points, create line or not, create points or not, create bicolor or not on choice.
 * : Create a circle or arc giving radius, diameter, circumference, area, startangle, endangle, arc, anglecenter, cord, arrow, center (point) on choice (same below but with GUI) plus create sector and face.
 * : Create a circle or arc giving radius, diameter, circumference, area, startangle, endangle, arc, anglecenter, cord, arrow, center (point) on choice (same above without GUI).
 * : Cut a circle or arc and create x arcs, giving the number of cut.
 * : This macro create one triangle creates a triangle by giving the head angle and the height of the triangle (the triangle of the head is positioned to the xyz coordinates 0.0)
 * : Create a project from a bmp image to create a texture easily
 * : Create a loft with a list of wire (specially created for Macro Texture see above)
 * : This macro create a text around a cylinder
 * : This macro creates a Wire with the coordinates extracted from a file. The coordinates X Y Z are separated by a space.
 * : This macro reproduce all element selected subobject wire or face.
 * : A GUI dialog that creates an Apothem, (inradius) Based Prism from user input.
 * : This macro create one spring truncate, the troncature is adjustable on the all coil to choice.
 * : This macro create one spring (helix) on the surface of the object (solide).
 * : Guitar Fretboard Maker
 * : Guitar Nut Maker
 * : Creates grooved cylinder for cam.
 * : creates an Arch Site from a series of contour lines
 * : Creates parametric honeycomb grid.
 * : Creates a feature python Honeycomb object compatible in and out of PartDesign.
 * : Creates an Hilbert curve wire in 2 or 3 dimensions with many iterations.
 * : AeroFoil creates airfoil curves and faces using pre-defined models, algebraic functions, and DAT or CSV Files.

[[File:Workbench_PartDesign.svg]] Objektumwandlung

 * : copies the selected object several times, on an array grid.
 * : bevels selected vertices, creates parametric feature python object, compatible with all solids (except with round edges) including features in Part Design bodies.
 * : flattens draft wires that are not planar to their median Z coordinate.
 * : flattens draft wires that are not planar to a plane defined by 3 points.
 * : allows to find and joint all non connected edge to the closest non connected one using a line.
 * : removes all parametric associativity from an object, leaving it as a "dumb" shape.
 * : Forces the creation of a Wire from lines and arcs that don't necessarily touch each other. Use this if normal wire operation fails.
 * : Sometimes arcs are transformed into BSplines, for example when scale operations have been applied to them. This macro recreates valid arcs from them. Useful before exporting to dxf.
 * : Creates a clone of the object and the converted in the chosen position and size (inch, mm, m, µm...). The base object is recognized in mm (FreeCAd base).
 * : Macro for easy scaling drawings, graphics, diagram, blueprint and similar 2D images in Image workbench.
 * : Macro that provides parametric defeaturing inside and outside the PartDesign Workbench.
 * : apply linear space transformations to distort shapes. E.g., non-uniform scaling, shearing, mirroring, axes swapping.
 * : This macro easily creates a connection between two objects, an object and a point or between two points or the selected line, wire, edge (the center of the objects are the starting and ending points of the sweep) can be selected form a configurable ellipse polygon circle.
 * : (parametric): alternative implementation of Part Section tool, more suitable for making sweep paths.
 * : (parametric): Boolean operation. Similar to Part Common, but with custom overlap count threshold.
 * : Filter wires from a sketch to only use certain ones, also 2D offsets, scales, rearranges wire order.
 * : Easily set colors of faces, edges, and vertices, including individual transparency levels.

[[File:Workbench_PartDesign.svg]] PartDesign Workbench

 * : Encapsulates non-PartDesign solids for use in PartDesign Bodies, and more.

[[File:View.svg]] 3D Drucker

 * : Exports current design to slicer software or CAM software.
 * : This code, when run, will export the visible bodies at the top level (bodies deeper in the tree will be ignored) of the currently open design to individual STL files, and open them it in the slicing software that you use. This macro will look for Cura as the default but you can change it to any other slider by changing the SLICERAPP variable in the source code.

[[File:Preferences-raytracing.svg]] Strahlverfolgung

 * : Export from FreeCAD to Kerkythea

[[File:Spreadsheet.svg]] Arbeitsbereich Tabellenkalkulation

 * : helps managing aliases inside FreeCAD Spreadsheet workbench. It is able to create, delete, move aliases and create a 'part family' group of files.
 * : Quickly create aliases in FreeCAD Spreadsheet workbench. It uses the labels from one column to create aliases for adjacent cells in the next column to the right, e.g. labels from Column A become aliases for the cells in Column B.
 * : This macro helps managing cells inside FreeCAD Spreadsheet workbench.
 * : This macro save the data in a csv file with the formula or in a xml file.
 * : Exports a spreadsheet as styled html. Intended as support in transfering data to office suits.
 * [[Image:Text-x-python.png|24px]] sheet2export: allows to export FreeCAD spreadsheet to file formats (.md, .html, .csv, .json).

[[File:Arch_Survey.svg]] Hilfsprogramm

 * : This macro red trace (editable) the center face (mass) with 1 point and print the coordinates
 * : This macro covers the following constraints: - Concentric constraint among non cylindrical parts; - Constraint on center Faces and/or Edges. It works also with the new Body and App::Part containers, as well as with STEP hierarchy.
 * : This macro makes Cutouts for Enclosures in a very handy way
 * : Add the macros found in the macros folder to the Macros menu of FreeCAD
 * : Forces manual recompute of model
 * : measures time it takes to recompute each object in a project
 * : Shake a sketch in order to discover its unconstrained parts.
 * : Replaces a part (simple copy) in an "Assembly" with another Part (simple copy).
 * : This macro toggles the Drawstyle of the selected object
 * : This macro toggles the Drawstyle of the selected object (same Macro Toggle Drawstyle above optimized all language)
 * : Highlight common parts.
 * : Compute the difference between two shapes.
 * : displays an interactively slidable cross-section.
 * : prints the SceneGraph.
 * : This macro red trace (editable) around the BoundingBox with 6 rectangles
 * : This macro help you to create an Arch Axis System along a line with a
 * : This macro positioned your object perpendicularly to wire selected.
 * : Merges materials that have the same base name (with different numeral endings like 001, 002,...) into one.
 * : rebinds standard view commands from digit keys to Ctrl+digit, so that they don't spin the view by accident when entering numbers.
 * : finds user config files system.cfg and user.cfg, copies folder location to system clipboard, instructs user on renaming these files in order to reset FreeCAD settings, and opens folder with default file browser.
 * : Easily post screenshots to the FreeCAD forum.
 * : Ping users on the forum with ease.
 * : unmap a sketch from its current support and makes its placement absolute, eventually creating a locating datum plane.
 * : reset Part containers to global origin while maintaining objects absolute position.
 * : temporarily split the property editor from the combo view to a separated dock widget
 * : re-align object(s) with FreeCAD coordinate system according reference face/edge
 * : manage visibility of document objects by type or individually
 * : Prints model tree as "ASCII art" with custom pattern & style, and export to clipboard, file or embedded document
 * : Macro for list all objects in the project in one list without hierarchy, options sort by name, label, visibility, group, by length option search by name, label .... without case sensitive or with case sensitive and select all objects displayed in the macro window.
 * : Shows a list of US Imperial Arch scales list with the corresponding factor to apply to TechDraw pages or views

[[File:Bulb.svg]] Wizards

 * : Creates an unfolded part from a sheet-metal-part.
 * : allows to unroll ruled surfaces and to draw them on a page.
 * : allows to unfold the surfaces of a box of any shape and to draw them on a page.
 * : Imports and scales a .dat airfoil to desired chord length.
 * : Allows the user to create a Geneva wheel mechanism from scratch. Must edit values within the Macro to alter the size of the object.
 * : A GUI front end that allows the user to create a Geneva wheel mechanism from scratch.
 * : Creates a half turn (left/right) stair from a Data-file.
 * : This macro generates both three dimensional half-hull and full-hull models from a series of 2D line drawings.
 * : Create stair helix, create your stair nosing select and run the macro.
 * : Additional Workbench to create different types of gears, involute gear, involute rack, cycloide gear, bevel gear.
 * : pops up a dialog asking for the dimensions of your corner piece, then creates the object in the document and creates a page view with top, front and lateral views of the piece
 * : pops up a dialog asking for the dimensions of your corner piece, then creates the object in the document and creates a page view with top, front and lateral views of the piece
 * : This little macro create one Property additional (memo or other text) for you object (only Draft)
 * : This little macro is dedicate to users of Windows 10. The explorer fonts for use the ShapeString is empty and this little macro can help you see aesily the font to use.
 * : Display a Rubik Cube and interactively do slice rotations.
 * : Display a Megaminx and interactively do slice rotations.
 * : Airfoil coordinates import, then scale the airfoil, rotate, translate in the plane, translate along the span, select the plane and the main axis, and turn the geometry into a sketch.
 * : Macro for automatic 2D views generation with 6 normal projections and one isometric.
 * : Macro for automatic drawing generation with 3 normal projections and one isometric.

Std_FreeCADWebsite.svg Woodworking

 * : Creates side and top/bottom walls for a cabinet with drilled holes for connection parts of manufacturer Hettich.
 * : Creates a variety of joints, such as mortise/tenon, box joints, dovetail joints, and snap joints.
 * [[Image:Text-x-python.png|24px]] getDimensions: FreeCAD macro to get chipboards dimensions to cut (BOM, cutlist).

Std_FreeCADWebsite.svg Andere interessante Makros, die von FreeCAD Anwendern erstellt wurden

 * [[Image:2364.png|24px]] By microelly2 : freeCAD_macro, geodata, Animation, freecad-nurbs, PieMenu, and more.
 * [[Image:Text-x-python.png|24px]] By hamish2014: FreeCAD_assembly2, FreeCAD_drawing_dimensioning, and more.
 * [[Image:Text-x-python.png|24px]] By triplus: IconThemes, ShortCuts, NavigationIndicator, TabBar, Launcher, PersistentToolbars, PieMenu, and more.
 * [[Image:681.jpg|24px]] By rockn: FreeCAD-Timber, FreeCAD-addons, FreeCAD-library, FreeCAD-StructuresBois, and more.
 * [[Image:Text-x-python.png|24px]] By oddtopus: flamingo (workbench for metal structures).
 * [[Image:Text-x-python.png|24px]] By Siardeni: workbench for create metal profiles, square tubing, z profile, palette, rotation, drawing, and more.
 * [[Image:Text-x-python.png|24px]] By realthunder: Assembly3 workbench, and more.

Anwendung
Siehe wie Makros installieren für eine ausführliche Beschreibung, und Werkzeugleisten anpassen um die Makros für erleichterten Zugang einer Werkzeugleiste hinzuzufügen.

Die Installation vieler Makros ist gleichbedeutend mit der Installation eines neuen Arbeitsbereichs; siehe wie zusätzliche Arbeitsbereiche einrichten für diese Informationen.

Automatische Einrichtung
Verwende den Erweiterungsverwalter in, um ein Makro zu installieren, das in das FreeCAD-macros Repositorium aufgenommen wurde.

Manuelle Einrichtung
Wenn der Erweiterungsverwalter nicht verwendet wird, kann das Makro manuell installiert werden.
 * Kopiere den Python-Code von der entsprechenden Makroseite.
 * Öffne das Makro Menü, klicke auf die -Schaltfläche und gib ihm einen Namen.
 * Füge den Python-Code ein, den du kopiert hast.
 * Klicke auf die Schaltfläche, und starte FreeCAD neu.
 * Um es zu nutzen, öffne erneut das Makromenü, wähle dein neues Makro und klicke auf die Schaltfläche.

Hinzufügen eines Makros zu einer benutzerdefinierten Werkzeugleiste

 * Gehe zu.
 * Auf dem Reiter füge einen neuen Makronamen hinzu und definiere optional ein Symbol und eine Tastenkombination.
 * Auf dem Reiter erstelle eine neue Werkzeugleiste und fügen dein Makro aus der Kategorie  hinzu.