Difference between revisions of "App Link/ru"

From FreeCAD Documentation
Jump to navigation Jump to search
(Created page with "=== Данные ===")
(Updating to match new version of source page)
 
(16 intermediate revisions by 3 users not shown)
Line 4: Line 4:
 
== Введение ==
 
== Введение ==
  
[[Image:Link.svg|32px]] [[App_Link/ru|App Link]], или, формально, {{incode|App::Link}}, это элемент, который возвращает ссылку на другой объект в документе или внешнем документе. Объект появился  {{Version|0.19}}, с целью повторного использования уже созданных объектов, что очень полезно для создания сборок.
+
[[File:Link.svg|32px]]
  
При создании обычной копии созданного объекта (например, через {{Button|[[Image:Part_SimpleCopy.svg|16px]] [[Part SimpleCopy‎/ru|Part SimpleCopy‎]]}}), дублицируется весь новый объект с его [[Part_TopoShape/ru|топологической формой]], что потребляет много памяти. App Link используется для повторного использования существующих данных существующих объектов, так что не надо создавать все новые объекты. Это улучшает поддержку копий, в частности в контексте механических сборок, где может быть нужно много дубликатов, или где требуется импорт малых сборок внутрь больших.
+
[[Image:Link.svg|32px]] [[App_Link/ru|App Link]], или, формально, {{incode|App::Link}}, это тип объекта, который ссылается на другой объект в том же документе в котором он находится или на ссылается на объект который находится в другом документе. Он специально разработан для эффективного многократного дублирования одного объекта, что помогает создавать сложные [[assembly/ru|сборки]] из уже собранных узлов и из множества повторно используемых компонентов, таких как винты, гайки и аналогичные крепежные изделия.
  
==Использование==
+
[[File:FreeCAD_core_objects.svg|800px]]
 +
 
 +
<div class="mw-translate-fuzzy">
 +
{{Caption|Упрощённая диаграмма отношений между основными объектами программы. Объект {{incode|App::Link}} это основной компонент системы, он не зависит от какого-либо верстака, но может использоваться в большинстве объектов, созданных во всех верстаках.}}
 +
</div>
  
* App Links может быть создан нажатием {{Button|[[Image:Std_LinkMake.svg|16px]] [[Std_LinkMake/ru|LinkMake]]}}.
+
== Применение ==
  
 +
<div class="mw-translate-fuzzy">
 
{{Emphasis|Примечание:}} [[App_Link/ru|App Link]] это внутренний объект, так что он в основном предназначен для использования разработчиками для создания верстаков сборки. Например, этот объект используют верстаки [[Assembly3_Workbench/ru|Assembly3]] и [[Assembly4_Workbench/ru|Assembly4]].
 
{{Emphasis|Примечание:}} [[App_Link/ru|App Link]] это внутренний объект, так что он в основном предназначен для использования разработчиками для создания верстаков сборки. Например, этот объект используют верстаки [[Assembly3_Workbench/ru|Assembly3]] и [[Assembly4_Workbench/ru|Assembly4]].
 +
</div>
  
==Свойства==
+
== Properties ==
 
 
See [[Property|Property]] for all property types that scripted objects can have.
 
 
 
An {{incode|App::Link}} object is not derived from a [[Part_Feature|Part Feature]], however, if the Link has a reference to an external object, it will show the properties of the latter object.
 
 
 
These are the properties available in the [[property editor|property editor]] for an empty {{incode|App::Link}}.
 
  
 +
<div class="mw-translate-fuzzy">
 
=== Данные ===
 
=== Данные ===
 +
</div>
  
{{TitleProperty|Link}}
 
* {{PropertyData|Linked Object}}:
 
* {{PropertyData|Link Transform}}:
 
* {{PropertyData|Placement}}:
 
* {{PropertyData|Show Element}}:
 
* {{PropertyData|Element Count}}:
 
* {{PropertyData|Scale}}:
 
 
{{TitleProperty|Base}}
 
* {{PropertyData|Label}}:
 
 
=== View ===
 
 
{{TitleProperty|Link}}
 
* {{PropertyView|Draw Style}}:
 
* {{PropertyView|Line Width}}:
 
* {{PropertyView|Override Material}}:
 
* {{PropertyView|Point Size}}:
 
* {{PropertyView|Selectable}}:
 
* {{PropertyView|Shape Material}}:
 
 
{{TitleProperty|Base}}
 
* {{PropertyView|On Top When Selected}}:
 
* {{PropertyView|Selection Style}}:
 
* {{PropertyView|Show In Tree}}:
 
* {{PropertyView|Visibility}}:
 
 
== Inheritance ==
 
 
[[File:FreeCAD_core_objects.svg|800px]]
 
 
{{Caption|Simplified diagram of the relationships between the core objects in the program. The {{incode|App::Link}} object is a core component of the system, it does not depend on any workbench, but it can be used with most objects created in all workbenches.}}
 
 
== Scripting ==
 
 
{{Emphasis|Смотри так же:}} [[FreeCAD Scripting Basics\ru|FreeCAD Scripting Basics]], и [[scripted objects/ru|scripted objects]].
 
 
Смотрите [[Part_Feature/ru|Part Feature]] для общей информации.
 
 
An App Link is created with the {{incode|addObject()}} method of the document.
 
{{Code|code=
 
import FreeCAD as App
 
 
doc = App.newDocument()
 
obj = App.ActiveDocument.addObject("App::Link", "Name")
 
obj.Label = "Custom label"
 
}}
 
 
== Further reading ==
 
 
The App Link object was introduced after 2 years of development and prototyping. This component was thought and developed almost single-handedly by user {{Emphasis|realthunder}}. The motivations and design implementations behind this project are described in his GitHub page, [https://github.com/realthunder/FreeCAD_assembly3/wiki/Link Link]. In order to accomplish this feature, several core changes to FreeCAD were made; these were also extensively documented in [https://github.com/realthunder/FreeCAD_assembly3/wiki/Core-Changes Core-Changes].
 
 
The App Link project started after the redesign of the [[PartDesign Workbench|PartDesign Workbench]] was complete in v0.17. The history of App Link can be traced to some essential forum threads:
 
* [https://forum.freecadweb.org/viewtopic.php?f=19&t=21505 Why an object can only be inside one App::Part?] (March 2017)
 
* [https://forum.freecadweb.org/viewtopic.php?f=10&t=21586 Introducing App::Link/XLink] (March 2017)
 
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=22216 Links] (May 2017)
 
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=23015 Realthunder Link implementation: Architecture discussion] (June 2017)
 
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=23419 PR #876: Link, stage one, context aware selection] (July 2017)
 
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=23626 Preview: Link, stage two, API groundwork] (July 2017)
 
* [https://forum.freecadweb.org/viewtopic.php?f=20&t=25712 Assembly3 preview] (December 2017)
 
* [https://forum.freecadweb.org/viewtopic.php?f=10&t=29542 Merging of my Link branch] (June 2018)
 
 
Finally, the pull request and merge happened:
 
* [https://forum.freecadweb.org/viewtopic.php?f=27&t=38621 App::Link: the big merge], old thread (July 2019), [https://github.com/FreeCAD/FreeCAD/pull/2350 pull request #2350] (the BIG merge), [https://github.com/realthunder/FreeCAD/tree/LinkMerge LinkMerge branch].
 
* [https://forum.freecadweb.org/viewtopic.php?f=8&t=37757 App::Link: the big merge], main thread (July 2019)
 
* [https://forum.freecadweb.org/viewtopic.php?p=329054#p329054 A simple path description of Link, 019, Link stage, Asm3, merge?] (August 2019)
 
* [https://forum.freecadweb.org/viewtopic.php?f=17&t=39672 PR#2559: expose link and navigation actions], an introduction to the Link feature in 0.19 (September 2019).
 
 
 
{{Std Base{{#translation:}}}}
 
 
{{Document objects navi{{#translation:}}}}
 
  
 +
{{Std_Base_navi{{#translation:}}}}
 +
{{Document_objects_navi{{#translation:}}}}
 
{{Userdocnavi{{#translation:}}}}
 
{{Userdocnavi{{#translation:}}}}

Latest revision as of 07:28, 22 February 2022

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎русский

Введение

Link.svg

Link.svg App Link, или, формально, App::Link, это тип объекта, который ссылается на другой объект в том же документе в котором он находится или на ссылается на объект который находится в другом документе. Он специально разработан для эффективного многократного дублирования одного объекта, что помогает создавать сложные сборки из уже собранных узлов и из множества повторно используемых компонентов, таких как винты, гайки и аналогичные крепежные изделия.

FreeCAD core objects.svg

Упрощённая диаграмма отношений между основными объектами программы. Объект App::Link это основной компонент системы, он не зависит от какого-либо верстака, но может использоваться в большинстве объектов, созданных во всех верстаках.

Применение

Примечание: App Link это внутренний объект, так что он в основном предназначен для использования разработчиками для создания верстаков сборки. Например, этот объект используют верстаки Assembly3 и Assembly4.

Properties

Данные