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

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

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

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

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

Прототип команды: P0 Согласование Точка ; X Y .

 
Пример 1:

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


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

 


Пример 2:

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

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

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

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


 

 

 

 

 

 

entity ExecP0 is
port (X,Y: in TOConst; P: out TOPoint);
end entity;

architecture ExecP0 of ExecP0 is
begin
     P.X<=X.C;
     P.Y<=Y.C;
end;

 

function EExecP0(var X,Y: TOChisl; var Out_Prm: TOPoint; Sg1,Sg2: integer): 
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 X.C do Compl(A,Re*Sg1,Im*Sg1);
          {if Y is TOChisl then} with 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.X:=A;
          Out_Prm.Y:=B;
          Out_Prm.W:=1;
          { TOPoint.Create(A,B,1,0,Kind,Att,OW);}
     end
{     else
     begin
          if Att.Chk=1 then Out_Prm:=TOEmpty.Create([X,Y],OW);
     end};

     Result:=TRUE;
end; // EExecP0