Как получить доступ к параметрам формы редактирования отрезка, а именно "Длина", т.е. нужно чтобы при создании отрезка его длинна уже была зафиксирована, если для этого в sdk стандартный метод?
Не уверен, что можно. Попробуй так сделать.
//------------------------------------------------------------------
procedure LineSeg_Dlina_Const;
var
j : integer;
rub : Phantom;
info : RequestInfo;
x, y : double ;
begin
j := 1;
FillChar( rub, sizeof(rub), 0 );
rub.type1.scale := 1;
rub.phType := 1;
FillChar( info, sizeof(info), 0 );
info.commands := ’Укажите точку привязки’;
while ( j 0 ) do
begin
if ( rub.type1.gr > 0 ) then
DeleteObj( rub.type1.gr );
rub.type1.gr := NewGroup( 1 );
LineSeg( 0, 0, 50, 0, 1 ); // 50 - длина отрезка. Можешь вызывать свое окно и указывать необходимую длину.
EndGroup();
j := Placement(Addr(info), x, y,
rub.type1.ang,
Addr(rub) );
case j of
-1:begin//поставить в модель
MoveObj( rub.type1.gr, x, y );
if( Abs(rub.type1.ang) > 0.001 ) then
RotateObj( rub.type1.gr, x, y, rub.type1.ang );
StoreTmpGroup( rub.type1.gr ); //поставить временную группу в вид
ClearGroup( rub.type1.gr );
end;
end;
end;
end;
//--------------------------------------------------------------------------------------
Спасибо за ответ. Я примерно также думал. Продолжу возится.