Podręcznik:Zastosowanie arkuszy kalkulacyjnych

From FreeCAD Documentation
Revision as of 18:16, 5 March 2024 by Kaktus (talk | contribs) (Created page with "Używając aliasów komórek w arkuszach kalkulacyjnych, jesteśmy w stanie użyć arkusza kalkulacyjnego do przechowywania "wartości głównych" w dokumencie FreeCAD. Można to wykorzystać na przykład do stworzenia modelu elementu o określonych wymiarach i przechowywania tych wymiarów w arkuszu kalkulacyjnym. Następnie bardzo łatwo jest stworzyć inny model o innych wymiarach, wystarczy otworzyć plik i zmienić kilka wymiarów w arkuszu kalkulacyjnym.")

FreeCAD posiada kolejne interesujące środowisko robocze, które warto zbadać: Arkusz kalkulacyjny. To środowisko umożliwia tworzenie arkuszy kalkulacyjnych takich jak te tworzone w Excelu lub Calc z LibreOffice bezpośrednio w programie FreeCAD. Te arkusze kalkulacyjne mogą być wypełniane danymi pobieranymi z modelu oraz mogą wykonywać różne obliczenia na wartościach. Arkusze kalkulacyjne można eksportować jako pliki CSV, które można zaimportować do dowolnej innej aplikacji arkuszy kalkulacyjnych.

W programie FreeCAD arkusze kalkulacyjne mają dodatkową użyteczność: Ich komórki mogą otrzymać nazwę i mogą być następnie wywoływane przez dowolne pole obsługiwane przez silnik wyrażeń. Sprawia to, że arkusze kalkulacyjne stają się potężnymi strukturami sterowania, gdzie wartości wprowadzone w określonych komórkach mogą sterować wymiarami modelu. Istnieje tylko jedna rzecz, o której trzeba pamiętać, ponieważ FreeCAD zabrania cyklicznych zależności między obiektami, ten sam arkusz kalkulacyjny nie może być używany do ustawiania właściwości obiektu i jednocześnie pobierania wartości właściwości z tego samego obiektu. Oznacza to, że arkusz kalkulacyjny i obiekt zależą od siebie nawzajem.

W poniższym przykładzie stworzymy kilka obiektów, pobierzemy niektóre z ich właściwości do arkusza kalkulacyjnego, a następnie użyjemy arkusza kalkulacyjnego do bezpośredniego sterowania właściwościami innych obiektów.

Odczyt właściwości

  • Zacznij od przejścia do środowiska Part Workbench i stwórz kilka obiektów: sześcian i walec i sfera.
  • Edytuj ich właściwość Umiejscowienie (lub użyj narzędzia Przesuń), aby umieścić je nieco od siebie, abyśmy mogli lepiej zobaczyć efekty tego, co zrobimy:

  • Wyodrębnijmy teraz kilka informacji o tych obiektach. Przejdź do środowiska Arkusz Kalkulacyjny
  • Naciśnij przycisk Utwórz arkusz.
  • Kliknij dwukrotnie nowy obiekt AkruszKalkulacyjny w widoku drzewa. Otworzy się edytor arkusza kalkulacyjnego:

Edytor arkuszy kalkulacyjnych FreeCAD, choć nie jest tak kompletny i potężny jak bardziej kompletne aplikacje arkuszy kalkulacyjnych, które wymieniliśmy powyżej, ma jednak większość podstawowych narzędzi i funkcji, które są powszechnie używane, takich jak możliwość zmiany właściwości komórek (rozmiar, kolor, wyrównanie), łączenia i dzielenia komórek, używania formuł takich jak =2+2 lub odwoływania się do innych komórek za pomocą =B1.

W FreeCAD, oprócz tych powszechnych funkcji, istnieje nowa interesująca: Możliwość odwoływania się nie tylko do innych komórek, ale także do innych obiektów z dokumentu i pobierania wartości z ich właściwości. Na przykład, pobierzmy kilka właściwości z 3 obiektów, które utworzyliśmy powyżej. Właściwości są tym, co możemy zobaczyć w oknie edytora właściwości, w zakładce Dane, gdy obiekt jest zaznaczony.

  • Zacznijmy od wprowadzenia kilku tekstów w komórkach A1, A2 i A3, abyśmy później pamiętali, co jest czym, na przykład Długość sześcianu, Promień walca i Promień kuli. Aby wprowadzić tekst, wystarczy wpisać go w polu "Zawartość" nad arkuszem lub dwukrotnie kliknąć komórkę.
  • Teraz sprawdźmy rzeczywistą długość naszego sześcianu. W komórce B1 wpisz =Cube.Length. Zauważysz, że arkusz kalkulacyjny ma mechanizm autouzupełniania, który jest w rzeczywistości taki sam jak w edytorze wyrażeń, którego używaliśmy w poprzednim rozdziale.
  • Zrób to samo dla komórek B2 (=Cylinder.Promień) i B3 (=Sfera.Promień).

  • Chociaż wyniki te są wyrażone w jednostkach, wartościami można manipulować jako dowolnymi liczbami, spróbuj na przykład wpisać w komórce C1: =B1*2.
  • Możemy teraz zmienić jedną z tych wartości w edytorze właściwości, a zmiana zostanie natychmiast odzwierciedlona w arkuszu kalkulacyjnym. Na przykład, zmieńmy długość naszego sześcianu na 20 mm:

Strona poświęcona środowisku pracy Arkusz Kalkulacyjny opisuje bardziej szczegółowo wszystkie możliwe operacje i funkcje dostępne w arkuszach kalkulacyjnych.

Zapis właściwości

Innym bardzo interesującym zastosowaniem środowiska Arkusz Kalkulacyjny w FreeCAD jest zrobienie czegoś przeciwnego do tego, co robiliśmy do tej pory: Zamiast odczytywać wartości właściwości obiektów 3D, możemy również przypisywać wartości tym obiektom. Pamiętaj jednak o jednej z podstawowych zasad FreeCAD: Zależności cykliczne są zabronione. Nie możemy zatem używać tego samego arkusza kalkulacyjnego do odczytu i zapisu wartości do obiektu 3D. To sprawiłoby, że obiekt zależałby od arkusza kalkulacyjnego, który również zależałby od obiektu. Zamiast tego utworzymy inny arkusz kalkulacyjny.

  • We can now close the spreadsheet tab (under the 3D view). This is not mandatory, there is no problem in keeping several spreadsheet windows open.
  • Press the New Spreadsheet button again
  • Change the name of the new spreadsheet to something more meaningful, such as Input (do this by right-clicking the new spreadsheet object, and choosing Rename).
  • Double-click the Input spreadsheet to open the spreadsheet editor.
  • In cell A1, let's put a descriptive text, for example: "Cube dimensions"
  • In cell B1, write =5mm (using the = sign makes sure the value is interpreted as a unit value, not a text).
  • Now to be able to use this value outside the spreadsheet, we need to give a name, or alias, to the B1 cell. Right-click the cell, click Properties and select the Alias tab. Give it a name, such as cubedims:

  • Naciśnij przycisk OK, a następnie zamknij kartę arkusza kalkulacyjnego.
  • Wybierz obiekt sześcianu
  • W edytorze właściwości kliknij małą ikonę wyrażenie po prawej stronie pola Długość. Spowoduje to otwarcie edytora wyrażeń, w którym możesz wpisać Spreadsheet001.cubedims. Powtórz tę czynność dla wysokości i szerokości:

Możesz się zastanawiać, dlaczego w powyższym wyrażeniu musieliśmy użyć "Spreadsheet001" zamiast "Input". Dzieje się tak dlatego, że każdy obiekt w dokumencie FreeCAD ma "nazwę wewnętrzną", która jest unikalna w dokumencie, oraz "etykietę", która pojawia się w widoku drzewa. Jeśli odznaczysz odpowiednią opcję w oknie preferencji, FreeCAD pozwoli ci nadać tę samą etykietę więcej niż jednemu obiektowi. Dlatego wszystkie operacje, które muszą jednoznacznie identyfikować obiekt, będą używać nazwy wewnętrznej zamiast etykiety, która może oznaczać więcej niż jeden obiekt. Najprostszym sposobem na poznanie wewnętrznej nazwy obiektu jest pozostawienie otwartego panelu wyboru (pasek menu Widok → Panele), który zawsze będzie wskazywał wewnętrzną nazwę wybranego obiektu:

Używając aliasów komórek w arkuszach kalkulacyjnych, jesteśmy w stanie użyć arkusza kalkulacyjnego do przechowywania "wartości głównych" w dokumencie FreeCAD. Można to wykorzystać na przykład do stworzenia modelu elementu o określonych wymiarach i przechowywania tych wymiarów w arkuszu kalkulacyjnym. Następnie bardzo łatwo jest stworzyć inny model o innych wymiarach, wystarczy otworzyć plik i zmienić kilka wymiarów w arkuszu kalkulacyjnym.

Finally, note that the constraints inside a sketch can also receive the value of a spreadsheet cell:

You can also give aliases to dimensional constraints (horizontal, vertical or distance) in a sketch (you can then use that value from outside the sketch as well):

Do pobrania

Więcej informacji: