Std: Umiejscowienie

From FreeCAD Documentation
Revision as of 18:43, 2 April 2022 by Kaktus (talk | contribs) (Created page with "Okno dialogowe można również uruchomić, klikając przycisk z wielokropkiem {{Button|...}}, który pojawia się w edytorze właściwości po kliknię...")

Std: Umiejscowienie

Lokalizacja w menu
Edycja → Umiejscowienie ...
Środowisko pracy
wszystkie
Domyślny skrót
brak
Wprowadzono w wersji
-
Zobacz także
Wyrównanie, Umiejscowienie

Opis

Polecenie Std: Umiejscowienie wyświetla panel zadań Umiejscowienia dla wybranego obiektu.

Panel zadań funkcji umiejscowienie

Użycie

  1. Zaznacz pojedynczy obiekt, który ma właściwość DANEUmiejscowienie w edytorze właściwości.
  2. Wybierz z menu opcję Edycja → Umiejscowienie ....
  3. Zmień jeden lub więcej parametrów przesunięcia i obrotu.
  4. Wykonaj jedną z następujących czynności:
    • Naciśnij przycisk OK, aby zastosować zmiany i zamknąć panel zadań.
    • Naciśnij przycisk Zastosuj, aby zastosować zmiany, ale zachować panel zadań otwarty dla dalszych zmian.
  5. Naciśnij klawisz Esc lub przycisk Anuluj, aby przerwać operację. Spowoduje to cofnięcie wszystkich zmian, które nie zostały zastosowane.

Okno dialogowe można również uruchomić, klikając przycisk z wielokropkiem ..., który pojawia się w edytorze właściwości po kliknięciu właściwości DANEUmiejscowienie.

Uwagi

  • For more information about the placement parameters see the Placement page, and the Aeroplane tutorial.

Tworzenie skryptów

Zobacz również: FreeCAD podstawy tworzenia skryptów.

See the Python scripting tutorial.

A placement is internally defined by a matrix; in many cases it is simpler to represent it by means of two components, a Base point (vector), and a Rotation value. The Rotation itself has different representations; it can be entirely defined by the value of a "quaternion" (xi + yj + zk + w), but it can also be described by a rotation Axis (unit vector) and a rotation Angle (radians).

import FreeCAD as App

doc = App.newDocument()
obj = doc.addObject("Part::Cylinder", "Cylinder")

print(obj.Placement)
# Placement [Pos=(0,0,0), Yaw-Pitch-Roll=(0,0,0)]
print(obj.Placement.Base)
# Vector (0.0, 0.0, 0.0)
print(obj.Placement.Rotation)
# Rotation (0.0, 0.0, 0.0, 1.0)

print(obj.Placement.Rotation.Angle)
# 0.0
print(obj.Placement.Rotation.Axis)
# Vector (0.0, 0.0, 1.0)
print(obj.Placement.Rotation.Q)
# (0.0, 0.0, 0.0, 1.0)

Move the base point of the object, then rotate the object 45 degrees around the X axis.

import math

obj.Placement.Base = App.Vector(5, 3, 1)
obj.Placement.Rotation.Axis = App.Vector(1, 0, 0)
obj.Placement.Rotation.Angle = math.radians(45)

print(obj.Placement)
# Placement [Pos=(5,3,1), Yaw-Pitch-Roll=(0,0,45)]
print(obj.Placement.Rotation.Q)
# (0.3826834323650898, 0.0, 0.0, 0.9238795325112867)
print(obj.Placement.Matrix)
# Matrix ((1,0,0,5),(0,0.707107,-0.707107,3),(0,0.707107,0.707107,1),(0,0,0,1))