В статье начнём разработку функционала для создания составных графических объектов. Наша библиотека будет поддерживать создание сложных составных графических объектов, в которых эти объекты смогут иметь любую иерархию связей. Подготовим все необходимые классы для последующей реализации таких объектов.
Скомпилируем советник, запустим его на графике и щёлкнем мышкой где-нибудь подальше от правого края графика.
Будет построена трендовая линия, а по её краям — объекты-ценовые метки:
В журнал будут выведены свойства трендовой линии и количество опорных точек трендовой линии для расчёта координат X и Y обеих ценовых меток. Так как для них мы указали только одну опорную точку для каждой из меток, то это и будет отражено в журнале.
2022.01.2016:37:29.340 ============= The beginning of the parameter list (Trend Line) =============
2022.01.2016:37:29.340 Object ID: 12022.01.2016:37:29.340 Base object ID: 02022.01.2016:37:29.340 Object type: Trend Line
2022.01.2016:37:29.340 Graphic element type: Extended standard graphic object2022.01.2016:37:29.340 Object belongs to: The graphic object belongs to the program
2022.01.2016:37:29.340 Object chart ID: 1317338443919386302022.01.2016:37:29.340 Chart subwindow number: 02022.01.2016:37:29.340 Object number in the list: The baseobject of the extended graphical object2022.01.2016:37:29.340 Change history: No
2022.01.2016:37:29.340 Object group: Not set2022.01.2016:37:29.340 Time of creation: 2022.01.2016:37:292022.01.2016:37:29.340 Visibility of an object at timeframes: Drawn on all timeframes
2022.01.2016:37:29.340 Object in the background: No
2022.01.2016:37:29.340 Priority of a graphical objectfor receiving events of clicking on a chart: 02022.01.2016:37:29.340 Prohibit showing of the name of a graphical objectin the terminal objects list: Yes
2022.01.2016:37:29.340 Object is selected: Yes
2022.01.2016:37:29.340 Object availability: Yes
2022.01.2016:37:29.340 Time coordinate:
2022.01.2016:37:29.340 - Pivot point 0: 2022.01.1309:002022.01.2016:37:29.340 - Pivot point 1: 2022.01.2010:002022.01.2016:37:29.340 Color: clrRed
2022.01.2016:37:29.340 Style: Solid line
2022.01.2016:37:29.340 Line thickness: 12022.01.2016:37:29.340 Ray goes to the left: No
2022.01.2016:37:29.340 Ray goes to the right: No
2022.01.2016:37:29.340 ------
2022.01.2016:37:29.340 Price coordinate:
2022.01.2016:37:29.340 - Pivot point 0: 1.147282022.01.2016:37:29.340 - Pivot point 1: 1.135982022.01.2016:37:29.340 ------
2022.01.2016:37:29.340 Name: "TestDoEasyPart93_TrendLineExt"2022.01.2016:37:29.340 Base object name: "TestDoEasyPart93_TrendLineExt"2022.01.2016:37:29.340 Description: Not set2022.01.2016:37:29.340 The text of a tooltip: Formed by the terminal
2022.01.2016:37:29.340 ============= End of the parameter list (Trend Line) =============
2022.01.2016:37:29.3402022.01.2016:37:29.352 OnChartEvent: PriceLeft: Num linked coord X: 1, Num linked coord Y: 12022.01.2016:37:29.364 OnChartEvent: PriceRight: Num linked coord X: 1, Num linked coord Y: 1
На данный момент мы просто строим раздельные графические объекты и записываем в их свойства что они принадлежат одному и тому же расширенному стандартному графическому объекту. Если же попробовать сдвинуть трендовую линию, то ценовые метки не будут следовать за ней. Но сегодня мы и не задавались такой целью — мы подготовили необходимый функционал для создания полноценных расширенных графических объектов.
Опубликована статья Графика в библиотеке DoEasy (Часть 93): Готовим функционал для создания составных графических объектов:
В статье начнём разработку функционала для создания составных графических объектов. Наша библиотека будет поддерживать создание сложных составных графических объектов, в которых эти объекты смогут иметь любую иерархию связей. Подготовим все необходимые классы для последующей реализации таких объектов.
Скомпилируем советник, запустим его на графике и щёлкнем мышкой где-нибудь подальше от правого края графика.
Будет построена трендовая линия, а по её краям — объекты-ценовые метки:
В журнал будут выведены свойства трендовой линии и количество опорных точек трендовой линии для расчёта координат X и Y обеих ценовых меток. Так как для них мы указали только одну опорную точку для каждой из меток, то это и будет отражено в журнале.
На данный момент мы просто строим раздельные графические объекты и записываем в их свойства что они принадлежат одному и тому же расширенному стандартному графическому объекту. Если же попробовать сдвинуть трендовую линию, то ценовые метки не будут следовать за ней. Но сегодня мы и не задавались такой целью — мы подготовили необходимый функционал для создания полноценных расширенных графических объектов.
Автор: Artyom Trishkin