Std: Umiejscowienie

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Std Placement and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎français • ‎italiano • ‎polski • ‎română • ‎русский • ‎한국어

Std Placement.svg 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.

Std Placement taskpanel.png

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

  • Więcej informacji na temat parametrów rozmieszczenia można znaleźć na stronie Umiejscowienie oraz w poradniku Samolot.

Tworzenie skryptów

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

Zobacz również stronę Tworzenie skryptów Python.

Umiejscowienie jest wewnętrznie zdefiniowane przez macierz. W wielu przypadkach prościej jest przedstawić je za pomocą dwóch składników, punktu (wektora) Baza i wartości Obrót. Sam Obrót ma różne reprezentacje. Może być całkowicie zdefiniowany przez wartość "quaternion" (xi + yj + zk + w), ale może być również opisana przez rotację (wektor jednostkowy) oraz rotację Kąt (radiany).

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)

Przesuń punkt bazowy obiektu, a następnie obróć obiekt o 45° wokół osi X.

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))