Difference between revisions of "App Link/ru"

From FreeCAD Documentation
Jump to navigation Jump to search
(Created page with "Проект App Link начался после того, как перепроектирование верстака PartDesign было заве...")
(Updating to match new version of source page)
 
(10 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|сборки]] из уже собранных узлов и из множества повторно используемых компонентов, таких как винты, гайки и аналогичные крепежные изделия.
 
 
==Использование==
 
 
 
* App Links может быть создан нажатием {{Button|[[Image:Std_LinkMake.svg|16px]] [[Std_LinkMake/ru|LinkMake]]}}.
 
 
 
{{Emphasis|Примечание:}} [[App_Link/ru|App Link]] это внутренний объект, так что он в основном предназначен для использования разработчиками для создания верстаков сборки. Например, этот объект используют верстаки [[Assembly3_Workbench/ru|Assembly3]] и [[Assembly4_Workbench/ru|Assembly4]].
 
 
 
==Свойства==
 
 
 
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}}.
 
 
 
=== Данные ===
 
 
 
{{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}}:
 
 
 
== Наследование ==
 
  
 
[[File:FreeCAD_core_objects.svg|800px]]
 
[[File:FreeCAD_core_objects.svg|800px]]
  
 +
<div class="mw-translate-fuzzy">
 
{{Caption|Упрощённая диаграмма отношений между основными объектами программы. Объект {{incode|App::Link}} это основной компонент системы, он не зависит от какого-либо верстака, но может использоваться в большинстве объектов, созданных во всех верстаках.}}
 
{{Caption|Упрощённая диаграмма отношений между основными объектами программы. Объект {{incode|App::Link}} это основной компонент системы, он не зависит от какого-либо верстака, но может использоваться в большинстве объектов, созданных во всех верстаках.}}
 +
</div>
  
== Scripting ==
+
== Применение ==
  
{{Emphasis|Смотри так же:}} [[FreeCAD Scripting Basics\ru|FreeCAD Scripting Basics]], и [[scripted objects/ru|scripted objects]].
+
<div class="mw-translate-fuzzy">
 +
{{Emphasis|Примечание:}} [[App_Link/ru|App Link]] это внутренний объект, так что он в основном предназначен для использования разработчиками для создания верстаков сборки. Например, этот объект используют верстаки [[Assembly3_Workbench/ru|Assembly3]] и [[Assembly4_Workbench/ru|Assembly4]].
 +
</div>
  
Смотрите [[Part_Feature/ru|Part Feature]] для общей информации.
+
== Properties ==
  
App Link содаётся методом {{incode|addObject()}} документа.
+
<div class="mw-translate-fuzzy">
{{Code|code=
+
=== Данные ===
import FreeCAD as App
+
</div>
 
 
doc = App.newDocument()
 
obj = App.ActiveDocument.addObject("App::Link", "Name")
 
obj.Label = "Custom label"
 
}}
 
 
 
== Дальнейшее чтение ==
 
 
 
Объект App Link был представлен после двух лет разработки и прототипирования. Этот компонент был задуман и спроектирован практически в одиночку пользователем {{Emphasis|realthunder}}. Мотивация и реализация дизайна этого проекта описаны на его странице в GitHub, [https://github.com/realthunder/FreeCAD_assembly3/wiki/Link Link]. Чтобы завершить эту функцию, в ядре FreeCAD были сделаны несколько изменений; это было подробно документировано в [https://github.com/realthunder/FreeCAD_assembly3/wiki/Core-Changes Core-Changes].
 
 
 
Проект App Link начался после того, как перепроектирование [[PartDesign Workbench/ru|верстака PartDesign]] было завершено в v0.17. История App Link может быть отслежена в некоторых важных ветках форума:
 
* [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

Данные