Manual:Using spreadsheets/pl: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Created page with "* Możemy teraz zamknąć zakładkę arkusza kalkulacyjnego ''(pod widokiem 3D)''. Nie jest to obowiązkowe, nie ma problemu z utrzymaniem kilku otwartych okien arkusza kalkulacyjnego. * Naciskamy ponownie przycisk 16px '''Nowy arkusz kalkulacyjny'''. * Zmień nazwę nowego arkusza kalkulacyjnego na coś bardziej znaczącego, na przykład '''Input''' ''(zrób to, klikając prawym przyciskiem myszy nowy obiekt arkusza kalkulacyjnego i wybi...")
 
(29 intermediate revisions by the same user not shown)
Line 1: Line 1:
<languages/>
<languages/>


{{Docnav
{{Docnav/pl
|[[Manual:BIM_modeling|BIM modeling]]
|[[Manual:BIM_modeling/pl|Modelowanie BIM]]
|[[Manual:Creating_FEM_analyses|Creating FEM analyses]]
|[[Manual:Creating_FEM_analyses/pl|Tworzenie analiz MES]]
|[[Manual:Introduction|Manual start]]
|[[Manual:Introduction/pl|Podręcznik:Słowo wstępne ]]
|IconC=Crystal_Clear_manual.png
|IconC=Crystal_Clear_manual.png
}}
}}
Line 10: Line 10:
{{Manual:TOC}}
{{Manual:TOC}}


FreeCAD features another interesting workbench to explore: the [[Spreadsheet_Workbench|Spreadsheet Workbench]]. This workbench allows you to create [https://en.wikipedia.org/wiki/Spreadsheet spreadsheets] such as those made with [https://en.wikipedia.org/wiki/Microsoft_Excel Excel] or [https://en.wikipedia.org/wiki/LibreOffice_Calc Calc from LibreOffice] directly in FreeCAD. These spreadsheets can then be populated with data extracted from your model, and can also perform a series of calculations between values. Spreadsheets can be exported as CSV files, which can be imported in any other spreadsheet application.
FreeCAD posiada kolejne interesujące środowisko robocze, które warto zbadać: [[Spreadsheet_Workbench|Arkusz kalkulacyjny]]. To środowisko umożliwia tworzenie [https://en.wikipedia.org/wiki/Spreadsheet arkuszy kalkulacyjnych] takich jak te tworzone w [https://en.wikipedia.org/wiki/Microsoft_Excel Excelu] lub [https://en.wikipedia.org/wiki/LibreOffice_Calc 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 [[Expressions/pl|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.
In FreeCAD, however, spreadsheets have an additional utility: Their cells can receive a name, and can then be referenced by any field supported by the [[Expressions|expressions engine]]. This turns spreadsheets into powerful control structures, where the values inserted in specific cells can drive dimensions of the model. There is only one thing to keep in mind, as FreeCAD prohibits circular dependencies between objects, the same spreadsheet cannot be used to set a property of an object and at the same time retrieve a property value from the same object. That would mean the spreadsheet and the object depend on one other.


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.
In the following example, we will create a couple of objects, retrieve some of their properties in a spreadsheet, then use the spreadsheet to directly drive properties of other objects.


<span id="Reading_properties"></span>
=== Reading properties ===
===Odczyt właściwości===


* Start by switching to the [[Part_Workbench|Part Workbench]], and create a couple of objects: a [[Image:Part_Box.svg|16px]] [[Part_Box|box]], a [[Image:Part_Cylinder.svg|16px]] [[Part_Cylinder|cylinder]] and a [[Image:Part_Sphere.svg|16px]] [[Part_Sphere|sphere]].
* Zacznij od przejścia do środowiska [[Part_Workbench/pl|Part Workbench]] i stwórz kilka obiektów: [[Image:Part_Box.svg|16px]] [[Part_Box/pl|sześcian]] i [[Image:Part_Cylinder.svg|16px]] [[Part_Cylinder/pl|walec]] i [[Image:Part_Sphere.svg|16px]] [[Part_Sphere/pl|sfera]].
* Edit their '''Placement''' property (or use the [[Image:Draft_Move.svg|16px]] [[Draft_Move|Draft Move]] tool) to place them a little apart, so we can better see the effects of what we'll do:
* Edytuj ich właściwość '''Umiejscowienie''' ''(lub użyj narzędzia [[Image:Draft_Move.svg|16px]] [[Draft_Move/pl|Przesuń]])'', aby umieścić je nieco od siebie, abyśmy mogli lepiej zobaczyć efekty tego, co zrobimy:


[[Image:Exercise_spreadsheet_01.jpg]]
[[Image:Exercise_spreadsheet_01.jpg]]


* Now, let's extract some information about these objects. Switch to the [[Spreadsheet_Workbench|Spreadsheet Workbench]]
* Wyodrębnijmy teraz kilka informacji o tych obiektach. Przejdź do środowiska [[Spreadsheet_Workbench/pl|Arkusz Kalkulacyjny]]
* Press the [[Image:Spreadsheet_Create.png|16px]] '''New Spreadsheet''' button
* Naciśnij przycisk [[Image:Spreadsheet_Create.png|16px]] '''Utwórz arkusz'''.
* Kliknij dwukrotnie nowy obiekt AkruszKalkulacyjny w widoku drzewa. Otworzy się edytor arkusza kalkulacyjnego:
* Double-click the new Spreadsheet object in the tree view. The spreadsheet editor opens:


[[Image:Exercise_spreadsheet_02.jpg]]
[[Image:Exercise_spreadsheet_02.jpg]]


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''.
The spreadsheet editor of FreeCAD, although it is not as complete and powerful as the more complete spreadsheet applications we listed above, has nevertheless most of the basic tools and functions that are commonly used, such as the possibility to change the aspect of the cells (size, color, alignment), join and split cells, use formulas such as '''=2+2''', or reference other cells with '''=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.
In FreeCAD, on top of these common features, there is a new interesting one: The possibility to reference not only other cells, but other objects from the document, and retrieve values from their properties. For example, let's retrieve a couple of properties from the 3 objects we created above. Properties are what we can see in the properties editor window, under the '''Data''' tab, when an object is selected.


* Let's start by entering a couple of texts in the cells A1, A2 and A3, so we remember what is what later on, for example '''Cube Length''', '''Cylinder Radius''' and '''Sphere Radius'''. To enter text, just write in the "Contents" field above the spreadsheet, or double-click a cell.
* 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.
* Now let's retrieve the actual length of our cube. In cell B1, type '''=Cube.Length'''. You will notice that the spreadsheet has an autocompletion mechanism, which is actually the same as the expression editor we used in the previous chapter.
* Do the same for cell B2 ('''=Cylinder.Radius''') and B3 ('''=Sphere.Radius''').
* Zrób to samo dla komórek B2 ''('''=Cylinder.Promień''')'' i B3 ''('''=Sfera.Promień''')''.


[[Image:Exercise_spreadsheet_03.jpg]]
[[Image:Exercise_spreadsheet_03.jpg]]


* Although these results are expressed with their units, the values can be manipulated as any number, try for example entering in cell C1: '''=B1*2'''.
* Chociaż wyniki te 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''':
* We can now change one of these values in the properties editor, and the change will be immediately reflected in the spreadsheet. For example, let's change the length of our cube to '''20mm''':


[[Image:Exercise_spreadsheet_04.jpg]]
[[Image:Exercise_spreadsheet_04.jpg]]


Strona poświęcona środowisku pracy [[Spreadsheet_Workbench/pl|Arkusz Kalkulacyjny]] opisuje bardziej szczegółowo wszystkie możliwe operacje i funkcje dostępne w arkuszach kalkulacyjnych.
The [[Spreadsheet_Workbench|Spreadsheet Workbench]] page will describe in more detail all the possible operations and functions available in spreadsheets.


<span id="Writing_properties"></span>
=== Writing properties ===
===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.
Another very interesting use of the Spreadsheet Workbench in FreeCAD is to do the contrary of what we have been doing until now: Instead of reading the values of properties of 3D objects, we can also assign values to these objects. Remember, however, one of the fundamental rules of FreeCAD: Circular dependencies are forbidden. We can therefore not use the same spreadsheet to read '''and''' write values to a 3D object. That would make the object depend on the spreadsheet, which would also depend on the object. Instead, we will create another spreadsheet.


* Możemy teraz zamknąć zakładkę arkusza kalkulacyjnego ''(pod widokiem 3D)''. Nie jest to obowiązkowe, nie ma problemu z utrzymaniem kilku otwartych okien arkusza kalkulacyjnego.
* 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 [[Image:Spreadsheet_Create.png|16px]] '''New Spreadsheet''' button again
* Naciskamy ponownie przycisk [[Image:Spreadsheet_Create.png|16px]] '''Nowy arkusz kalkulacyjny'''.
* Zmień nazwę nowego arkusza kalkulacyjnego na coś bardziej znaczącego, na przykład '''Input''' ''(zrób to, klikając prawym przyciskiem myszy nowy obiekt arkusza kalkulacyjnego i wybierając '''Zmień nazwę''')''.
* 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''').
* Kliknij dwukrotnie arkusz kalkulacyjny Input, aby otworzyć edytor arkuszy kalkulacyjnych.
* Double-click the Input spreadsheet to open the spreadsheet editor.
* W komórce A1 umieśćmy tekst opisowy, na przykład: "Wymiary sześcianu"
* 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).
* W komórce B1 wpiszmy '''=5mm''' (użycie znaku = sprawia, że wartość jest interpretowana jako wartość jednostkowa, a nie tekst).
* 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''':
* Teraz, aby móc użyć tej wartości poza arkuszem kalkulacyjnym, musimy nadać nazwę lub alias komórce B1. Kliknij komórkę prawym przyciskiem myszy, kliknij "Właściwości" i wybierz kartę '''Alias'''. Nadaj jej nazwę, na przykład '''cubedims''':


[[Image:Exercise_spreadsheet_05.jpg]]
[[Image:Exercise_spreadsheet_05.jpg]]


* Naciśnij przycisk '''OK''', a następnie zamknij kartę arkusza kalkulacyjnego.
* Press '''OK''', then close the spreadsheet tab
* Wybierz obiekt sześcianu
* Select the cube object
* In the properties editor, click the little [[Image:Bound-expression-unset.png|16px]] '''expression''' icon at the right side of the '''Length''' field. This will open the [[Expressions|expressions editor]], where you can write '''Spreadsheet001.cubedims'''. Repeat this for Height and Width:
* W edytorze właściwości kliknij małą ikonę [[Image:Bound-expression-unset.png|16px]] '''wyrażenie''' po prawej stronie pola '''Długość'''. Spowoduje to otwarcie [[Expressions/pl|edytora wyrażeń]], w którym możesz wpisać '''Spreadsheet001.cubedims'''. Powtórz tę czynność dla wysokości i szerokości:


[[Image:Exercise_spreadsheet_06.jpg]]
[[Image:Exercise_spreadsheet_06.jpg]]


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:
You might wonder why we had to use "Spreadsheet001" instead of "Input" in the expression above. This is because each object, in a FreeCAD document, has an '''internal name''', which is unique in the document, and a '''label''', which is what appears in the tree view. If you uncheck the relevant option in the preferences window, FreeCAD will allow you to give the same label to more than one object. This is why all operations that must identify an object uniquely, will use the internal name instead of the label, which could designate more than one object. The easiest way to know the internal name of an object is by keeping the '''selection panel''' (menu bar View → Panels) open, it will always indicate the internal name of a selected object:


[[Image:Exercise_spreadsheet_07.jpg]]
[[Image:Exercise_spreadsheet_07.jpg]]


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.
By using cell aliases in spreadsheets, we are able to use a spreadsheet to store "master values" in a FreeCAD document. This can be used, for example, to have a model of a piece of certain dimensions, and to store these dimensions in a spreadsheet. It then becomes very easy to produce another model with different dimensions, it is just a matter of opening the file and changing a couple of dimensions in the spreadsheet.


Na koniec należy zauważyć, że wiązania wewnątrz szkicu mogą również otrzymać wartość komórki arkusza kalkulacyjnego:
Finally, note that the constraints inside a sketch can also receive the value of a spreadsheet cell:


[[Image:Exercise_spreadsheet_08.jpg]]
[[Image:Exercise_spreadsheet_08.jpg]]


Można również nadawać aliasy wiązaniom wymiarowym (poziomym, pionowym lub odległości) w szkicu ''(można następnie użyć tej wartości również spoza szkicu)'':
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):


[[Image:Exercise_spreadsheet_09.jpg]]
[[Image:Exercise_spreadsheet_09.jpg]]


'''Download'''
'''Do pobrania'''


* The file produced in this exercise: https://github.com/yorikvanhavre/FreeCAD-manual/blob/master/files/spreadsheet.FCStd
* Plik utworzony w tym ćwiczeniu: https://github.com/yorikvanhavre/FreeCAD-manual/blob/master/files/spreadsheet.FCStd


'''Read more'''
'''Więcej informacji:'''


* [[Spreadsheet_Workbench|The Spreadsheet Workbench]]
* [[Spreadsheet_Workbench/pl|Arkusz kalkulacyjny]]
* [[Expressions|The Expressions engine]]
* [[Expressions/pl|Silnik wyrażeń]]




{{Docnav
{{Docnav/pl
|[[Manual:BIM_modeling|BIM modeling]]
|[[Manual:BIM_modeling/pl|Modelowanie BIM]]
|[[Manual:Creating_FEM_analyses|Creating FEM analyses]]
|[[Manual:Creating_FEM_analyses/pl|Tworzenie analiz MES]]
|[[Manual:Introduction|Manual start]]
|[[Manual:Introduction/pl|Podręcznik:Słowo wstępne ]]
|IconC=Crystal_Clear_manual.png
|IconC=Crystal_Clear_manual.png
}}
}}

Latest revision as of 18:19, 5 March 2024

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.

  • Możemy teraz zamknąć zakładkę arkusza kalkulacyjnego (pod widokiem 3D). Nie jest to obowiązkowe, nie ma problemu z utrzymaniem kilku otwartych okien arkusza kalkulacyjnego.
  • Naciskamy ponownie przycisk Nowy arkusz kalkulacyjny.
  • Zmień nazwę nowego arkusza kalkulacyjnego na coś bardziej znaczącego, na przykład Input (zrób to, klikając prawym przyciskiem myszy nowy obiekt arkusza kalkulacyjnego i wybierając Zmień nazwę).
  • Kliknij dwukrotnie arkusz kalkulacyjny Input, aby otworzyć edytor arkuszy kalkulacyjnych.
  • W komórce A1 umieśćmy tekst opisowy, na przykład: "Wymiary sześcianu"
  • W komórce B1 wpiszmy =5mm (użycie znaku = sprawia, że wartość jest interpretowana jako wartość jednostkowa, a nie tekst).
  • Teraz, aby móc użyć tej wartości poza arkuszem kalkulacyjnym, musimy nadać nazwę lub alias komórce B1. Kliknij komórkę prawym przyciskiem myszy, kliknij "Właściwości" i wybierz kartę Alias. Nadaj jej nazwę, na przykład 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.

Na koniec należy zauważyć, że wiązania wewnątrz szkicu mogą również otrzymać wartość komórki arkusza kalkulacyjnego:

Można również nadawać aliasy wiązaniom wymiarowym (poziomym, pionowym lub odległości) w szkicu (można następnie użyć tej wartości również spoza szkicu):

Do pobrania

Więcej informacji: