Точка задана координатами
 

Отношение предназначено для задания собственной точки вещественной или комплексной плоскости Точка посредством указания ее координат X и Y.

В поле параметров X и Y допускается указывать имя переменной, ссылающейся на точку. В этом случае значение координаты генерируемой точки будет совпадать с соответственной координатой точки, указанной во входном параметре.

Если тип объекта, указанного в любом из входных параметров, оказывается несовместимым с типом этого параметра, то при установленном флажке NIL в выходной параметр заносится значение NIL-объекта.

 
 
 
Клавиша
Предварительно
выделено:
Действие
Выделение после действия:
p, P Нет выделения Построение точки, заданой координатами, соответствующими текущему положению курсора Нет выделения
. Любое выделение Точка в текущем положении курсора Построенная точка выделяется и добавляется к предыдущему выделению
 
Параметры
Типы объектов
Функциональное назначение параметров
Точка
Точка
Определяемая точка
X
Величина, точка
Значение X-координаты
Y
Величина, точка
Значение Y-координаты
 

Прототип команды: .

 
Пример 1:

Задать точку с координатами X=30, Y=80.


Алгоритм "Главный"
1
Точка p1 задана координатами 30 и 80 .

 


Пример 2:

Задать точку с координатами X=10+30i, Y=100-20i

Алгоритм "Главный"
1
Точка p1 задана координатами 10|30 и 100|-20 .

отображение вещественной компоненты мнимых точек

отображение точек на комплексной плоскости


 

function EExecP0( X,Y: TObj;  var Out_Prm: TObj; var Att: TAtt; Sg1,Sg2: integer; OW: pointer): boolean;

var A,B: complex;
    Kind: TKindPoint;

begin
     Result:=FALSE;
     Out_Prm:=NIL;

     if ((X is TOChisl) or (X is TOPoint)) and ((Y is TOChisl) or (Y is TOPoint)) then
     begin
          if X is TOChisl then with TOChisl(X).C do Compl(A,Re*Sg1,Im*Sg1);
          if Y is TOChisl then with TOChisl(Y).C do Compl(B,Re*Sg2,Im*Sg2);
          if X is TOPoint then with TOPoint(X).X do Compl(A,Re*Sg1,Im*Sg1);
          if Y is TOPoint then with TOPoint(Y).Y do Compl(B,Re*Sg2,Im*Sg2);

          Kind:=tp_fixed;
          if (X is TOChisl) and (Y is TOChisl) then if (TOChisl(X).Kind=tc_Constant) or (TOChisl(Y).Kind=tc_Constant)  then Kind:=tp_halfFree;
          if (X is TOChisl) and (Y is TOChisl) then if (TOChisl(X).Kind=tc_Constant) and (TOChisl(Y).Kind=tc_Constant) then Kind:=tp_free;

          if (X is TOPoint) and (Y is TOChisl) then if (TOChisl(Y).Kind=tc_Constant)  then Kind:=tp_halfFree;
          if (X is TOChisl) and (Y is TOPoint) then if (TOChisl(X).Kind=tc_Constant)  then Kind:=tp_halfFree;

          Out_Prm:=TOPoint.Create(A,B,1,0,Kind,Att,OW);
     end
     else
     begin
          if Att.Chk=1 then Out_Prm:=TOEmpty.Create([X,Y],OW,NIL);
     end;

     Result:=TRUE;
end; { EExecP0 }