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 |