Macro FCInfo/pl

Macro FCInfo

Opis
Podaje informacje o wybranym kształcie i może wyświetlać przeliczanie długości, nachylenia (stopnie, radiany, stopnie, procenty), powierzchni, objętości i masy w różnych jednostkach (metrycznych i brytyjskich). Makro działa teraz także dla elementów szkicu w trybie edycji.


French Version Wersja francuska

Macro version: 1.40b
Last modified: 2026/02/26
FreeCAD version: wszystkie
Download: ikonka paska narzędziowego
Autor: Mario52

Autor
Mario52
Do pobrania
ikonka paska narzędziowego
Odnośniki
Wersja Makrodefinicji
1.40b
Data zmian
2026/02/26
Wersja FreeCAD
wszystkie
Domyślny skrót
Brak
Zobacz również
Spis wymiarów, Makro SimpleProperties, Makro FCInfoGlass

Opis

Podaje informacje o wybranym kształcie i może wyświetlać przeliczanie długości, nachylenia (stopnie, radiany, stopnie, procenty), powierzchni, objętości i masy w różnych jednostkach (metrycznych i brytyjskich). Makro działa teraz także dla elementów szkicu w trybie edycji.

Temporary code for external macro link. Do not use this code. This code is used exclusively by Addon Manager. Link for optional manual installation: Macro


# This code is copied instead of the original macro code
# to guide the user to the online download page.
# Use it if the code of the macro is larger than 64 KB and cannot be included in the wiki
# or if the RAW code URL is somewhere else in the wiki.

from PySide import QtGui, QtCore

diag = QtGui.QMessageBox(QtGui.QMessageBox.Information,
    "Information",
    "This macro must be downloaded from this link\n"
    "\n"
    "https://gist.githubusercontent.com/mario52a/8d40ab6c018c2bde678f/raw/4afa86cc2636684bee93760cea4751f8a9ae9f72/FCInfo_en_Ver_1-40b-rmu_Docked.FCMacro" + "\n"
    "\n"
    "Quit this window to access the download page")

diag.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint)
diag.setWindowModality(QtCore.Qt.ApplicationModal)
diag.exec_()

import webbrowser 
webbrowser.open("https://gist.githubusercontent.com/mario52a/8d40ab6c018c2bde678f/raw/4afa86cc2636684bee93760cea4751f8a9ae9f72/FCInfo_en_Ver_1-40b-rmu_Docked.FCMacro")
<class="rawcodeurl"><a href="https://gist.githubusercontent.com/mario52a/8d40ab6c018c2bde678f/raw/4afa86cc2636684bee93760cea4751f8a9ae9f72/FCInfo_en_Ver_1-40b-rmu_Docked.FCMacro">raw code</a>


FCInfo

Użycie

Wybierz obiekt i uruchom aplikację lub najpierw uruchom aplikację, a następnie wybierz obiekt. Obiekt zostanie przeanalizowany i otworzy się okno dialogowe zawierające zebrane informacje. Przy każdym nowym wyborze jednostka długości jest resetowana do mm, a jednostka kąta do stopni dziesiętnych. 900px|left|okno


Sektor 1: Dokument

Dokument FCInfo

(można ustawić zmienną switch_setVisible_GBox_001_Document na false, aby ukryć pole)

Sektor 2: Współrzędne kliknięcia myszą

Współrzędne FCInfo

(możesz ustawić zmienną switch_setVisible_GBox_002_Coordinate_Mouse na false, aby ukryć Prostopadłościan)

Sektor 3: Kolor na punkcie

FCInfo Kolor na punkcie

(można ustawić zmienną switch_setVisible_GBox_003_Color na false, aby ukryć to pole)

Sektor 4: Komponenty siatki

FCInfo Komponenty siatki

Jeśli wybór dotyczy obiektu siatkowego, wyświetla się nowe okno "Komponenty" zawierające:

(można ustawić zmienną switch_setVisible_GBox_004_Object_Mesh na false, aby ukryć pole)

Sektor 5: Jednostki

FCInfo Jednostki

(można ustawić zmienną switch_setVisible_GBox_005_Value_Unit na false, aby ukryć to pole)

Sektor 6: Nachylenie

FCInfo Nachylenie

(można ustawić zmienną switch_setVisible_GBox_006_Inclination na false, aby ukryć to pole)

Sektor 7: Powierzchnia i objętość

FCInfo Powierzchnia i objętość

(można ustawić zmienną switch_setVisible_GBox_007_Surface_and_Volume na false, aby ukryć to pole)

Sektor 8: Koszt

FCInfo Koszt

0,027 Eu

10 0000 Eu (za kg)
(można ustawić zmienną switch_setVisible_GBox_008_Cost_And_Price na false, aby ukryć pole)

Sektor 9: Ramka ograniczająca

FCInfo Ramka ograniczająca

(można ustawić zmienną switch_setVisible_GBox_009_BoundBox na false, aby ukryć to pole)

Sektor 10: Środek:

FCInfo Środek...

(aby ukryć pole, zmienną switch_setVisible_GBox_010_Center_Mass można ustawić na false)

Sektor 11: Bezwładność

FCInfo Bezwładność

analogicznie dla długości i masy

(można ustawić zmienną switch_setVisible_GBox_011_Inertia na false, aby ukryć to pole)

Sektor 12: Arkusz kalkulacyjny

FCInfo Wyłączony

(można ustawić zmienną switch_setVisible_GBox_012_SpreadSheet na false, aby ukryć to pole)

Sektor 13: Tworzenie arkusza kalkulacyjnego

FCInfo Arkusz kalkulacyjny

Opcja zapisu lub odczytu arkusza kalkulacyjnego z różnymi separatorami: tabulator, przecinek, średnik, spacja.
Tabulacja (tabulator) jest separatorem w środowisku pracy Arkusz kalkulacyjny.
Liczba tych czterech separatorów jest obliczana pomocniczo, jeśli separator jest nieznany.
Przecinek (COMMA) był starym separatorem makra FCInfo (wersja 01.16 i wcześniejsze).
Dla zgodności z arkuszem kalkulacyjnym FreeCAD i od wersji 01.17 domyślnym separatorem jest TABULACJA.
Jeśli chcesz przekonwertować stary arkusz FCInfo: otwórz go w FCInfo i zapisz ponownie z zaznaczoną opcją Tabulacja.
(można ustawić zmienną switch_setVisible_GBox_013_SpreadSheet_Creation na false, aby ukryć to pole)

Sektor 14: Główne narzędzia

FCInfo Główne

(można ustawić zmienną switch_setVisible_GBox_014_Main_Tools na false, aby ukryć to pole)

Po uruchomieniu makra, makro pozostaje aktywne, a okno pozostaje widoczne. Aby zakończyć makro, kliknij Exit. Jeśli zamkniesz je przyciskiem krzyżyka, makro pozostaje w pamięci, a dane nadal pojawiają się w "Widoku raportu" we FreeCAD. W takim przypadku należy ponownie uruchomić FreeCAD, aby je zamknąć.

Opcje

Używane jednostki

Jednostka długości:

km, hm, dam, m, dm, cm, mm, µm, nm, pm, fm, cal, linka, stopa, jard, pręt, łańcuch, furlong, mila, liga, mila morska.

Jednostki kątów :

  1. stopnie dziesiętne, np.: 174.831872611°
  2. stopnie, minuty, sekundy, np.: 174° 49' 54.741401''
  3. radiany, np.: 3.05139181449 rad
  4. grady, np.: 194.257636235 gon
  5. procenty, np.: 30° = 57.74%

Interpretacja kątów wyświetlanych w FCInfo.

Jednostka masy :

tona, kwintal, kg, hg, dag, gram, dg, cg, mg, µg, ng, pg, fg, gr (grain), dr (drachma), oz (uncja), oz t (uncja trojańska),
lb t (funt trojański), lb (funt av), st (stone), qtr (quarter), cwt (hundredweight), tonneau fr, ct

Konfiguracja FCInfo


Ten przełącznik (sekcja GroupBox) pozwala wyświetlać tylko wybraną sekcję (lub kilka sekcji) (tylko wizualnie) false lub true.

Wszystkie obliczenia są wykonywane bez uwzględnienia tej opcji.

Skrypt

Skopiuj zawartość makra do pliku o nazwie "FCInfo.FCMacro"

Lub bezpośrednio w interfejsie FreeCAD.
Ikona musi znajdować się w tym samym katalogu co makro.
Pobierz obraz do umieszczenia na ikonie i kliknij prawym przyciskiem myszy "Zapisz jako" (nie zmieniaj nazwy).

PS: kod jest zbyt długi, aby zmieścić się na stronie wiki (obecnie strony wiki akceptują tylko 64 KB), dlatego kod makra został umieszczony na forum

Pobierz plik makra na gist dokowany po prawej stronie


(Lub na forum. )

PS: to makro używa getSelection(), a numeracja obiektów zaczyna się od 1, np. dla sześcianu Edge1 do Edge12, podczas gdy w konsoli kodu numeracja zaczyna się od 0, np. Edge[0] do Edge[11].
To jest normalne — numeracja w tablicach/listach wewnątrz OpenCascade zawsze zaczyna się od 1, a nie od 0.

Ograniczenia

Zawsze należy zamknąć program za pomocą przycisku Exit. Jeśli program zostanie zamknięty bez użycia przycisku Exit, pozostanie on w pamięci i będzie nadal działał, a ekran pozostanie w "Widoku raportu". Aby usunąć program z pamięci, należy zamknąć FreeCAD.
W tabeli widocznych jest tylko pierwsze 200 elementów obiektu. Jeśli obiekt zawiera więcej niż 200 elementów, wyświetlany jest sygnał (! +200). Pełna lista danych jest widoczna w pliku zapisanym za pomocą przycisku Save.

Jeśli okno makra jest niewidoczne po uruchomieniu, spójrz na dolne okno:


projekt:
odczyt pliku bezpośrednio w tabeli. wykonano
dopasowanie "Edges" i ich współrzędnych wykonano
skojarzenie materiału z jego gęstością
pochylenie na elemencie zamiast całego obiektu wykonano
osadzenie bezpośrednio w interfejsie FreeCAD wykonano

Wersja

ver "1.40b" 2026/02/26 : korekta zapisu spreadSheet

ver "1.40" 2026/02/26 : sekcja "bezwładność" całkowicie przerobiona przez RexLinz https://forum.freecad.org/viewtopic.php?p=874981#p874981 Dzięki RexLinz

wersja "1.30d" 2026/02/22 : zamienia freecadweb na freecad

wersja "1.30c" 2025/01/28 : zamienia połączenie comboBox dla Arch Linux

zamienia:

QtCore.QObject.connect(self.comboBox_Unit, QtCore.SIGNAL(u"currentIndexChanged(QString)"), self.SIGNAL_comboPoids_Changed)

na:

self.comboBox_Unit.currentTextChanged.connect(self.SIGNAL_comboPoids_Changed)

wesja "1.30b" 2025/01/20 : zamienia ukośnik Windows "\" na ukośnik w Pythonie "/"

wersja "1.30" 2025/01/02 : usunięto wszystkie odniesienia do PySide, PySide2 i QtWidgets, zmodyfikowano plik zapisu Qt

#
import PySide2
from PySide2 import QtGui , QtCore, QtWidgets
from PySide2.QtWidgets import QComboBox
from PySide2.QtWidgets import QMessageBox
from PySide2.QtWidgets import QTableWidget, QApplication
from PySide2.QtGui import *
from PySide2.QtCore import *
from PySide2.QtWidgets import *

            OpenName, Filter = PySide2.QtWidgets.QFileDialog.getOpenFileName(None, u"Read a txt file", setPathLatestDirectory, "*.FCInfo *.csv *.asc *.txt;;FCInfo (*.FCInfo);;Cvs (*.csv);;Ascii (*.asc);;TXT (*.txt);;(*.*);;(*)")#PySide2

zastąpiono i zmieniono polecenie na

#
import PySide
try:
    from PySide import QtWidgets
    from PySide.QtWidgets import *
except Exception:
    None
from PySide import QtGui , QtCore
from PySide.QtGui import *
from PySide.QtCore import *

            OpenName, Filter = QFileDialog.getOpenFileName(None, u"Read a txt file", setPathLatestDirectory, "*.FCInfo *.csv *.asc *.txt;;FCInfo (*.FCInfo);;Cvs (*.csv);;Ascii (*.asc);;TXT (*.txt);;(*.*);;(*)")#PySide

wersja "1.29b" 2024/05/10 PySide2 zmodyfikowano Inertia "MatrixX1*uniteM to (MatrixX1*uniteM)" oraz dodano spinBox dla momentu bezwładności

ver 1.29 2024/05/06 wersja francuska fr PySide6 autorstwa sylvainbx https://gist.github.com/sylvainbx/af09a30be3e1427de56305825331fb29 podziękowania dla sylvainbx

wersja 1.28b 1.28c 2023/10/30 ortografia

wersja 1.28 01/09/2023 zmieniono nazwy zmiennych, możliwość ukrycia każdego sektora, zapis danych arkusza w dokumencie, promień powierzchni, dodano przyciski webWiki i webForum

ver 1.27 2023/06/30 zoptymalizowano styleSheet, poprawiono pozycję lewo/prawo oraz przywracanie widoku po edycji w Szkicowniku

self.PB_00_Decrement.setStyleSheet("background-color: white; border:2px solid rgb(215, 10, 22);")      # bord white and red

zastąpione przez

self.PB_00_Decrement.setStyleSheet("QPushButton {background-color: white; border:2px solid rgb(215, 10, 22)};")      # bord white and red

Dodano

FreeCAD.ActiveDocument.openTransaction(u"FCInfo")    # memorise les actions (avec annuler restore)
FreeCAD.ActiveDocument.commitTransaction()           # restore les actions  (avec annuler restore)
#FreeCAD.ActiveDocument.abortTransaction()           # abandonne les actions(avec annuler restore)
try:
        self.window.setAttribute(QtCore.Qt.WA_DeleteOnClose, True)    # destroy
        self.window.deleteLater()                                     # destroy
        self.window.destroy()                                         # destroy
except Exception:
        None

How do i exit from FreeCAD instead of Python?

instead:

self.window.hide()

oraz dodano możliwość wyświetlania lub nie okna "Error Message" - domyślnie false; jeśli chcesz aktywować okno ostrzeżeń, przejdź do:

FreeCAD >Menu >Tools >Edit parameters... >BaseApp/Preferences/Macros/FCMmacros/FCInfo > switchWarning

Łącza

Zobacz również: Arch Survey Architektura: Spis wymiarów

Możesz podzielić się swoimi uwagami na forum Info Workbench - Pomoc w sprawie ikon
Tutaj inny wpis Makro FCInfo