Q&A

  • Tobject(Tlist)이게 무엇을 의미하는지요
procedure Tpitch.detect_sipe;
var
     dist : real;
     bi   : integer;
begin
     for bi := 0 to blocks.count-1 do begin   //block:Tlist
       with Tblock(blocks.items[bi]) do begin //Tblock:Tobject
         dist := distance(pt[0],pt[length(pt)-1]);
         if dist <= 10e-3 then
          sipeis := false
         else
          sipeis := true
       end;
     end;
end;

앞부분은 생략해서 해석이 가능하실지 모르겠지만
Tobject.pt[]에 좌표위치를 받아서 거리를 구해서 조건문을 쓴건데요
with Tblock(block.items[bi]) do begin 이부분좀 해석부탁드립니다.
distance는 함수같은데 어떻게 어떤 클래스에 속한 함수이며, 어떻게 사용하고 어떤 값을 반환하는지요
빠른 답변 부탁드립니다.
참고로
result:=Tobject.create
block.add(result)

1  COMMENTS
  • Profile
    Marek 2007.01.18 06:45
    안녕하세요
    TBlock은 TObject형을 소스 상단(type내부)에 아래와 같이 사용자가 정의한 Object이고요
    TBlock=class(TObject)
        ......

    blocks는 'blocks.items[bi]'에 의하면
    분명 아래와 같이 어딘가 선언되었을 것입니다.
    blocks:  TStringList 또는 TList

    distance역시 사용자function이므로 소스를  찾아보십시요.
    위 3항목 모두 선언되는 부분을 살펴 보시는 것이 좋을듯 싶습니다.
    TBlock이 Class이므로 procedure 및 function이 모두 선언될수도
    있기 때문입니다. 그래서 with Tblock(blocks.items[bi]) do begin 은
    리스트 blocks가 갖고 있는 값들중 bi번째 값에 해당하는 TBlock의
    property, procedure, function등을 실행하는 begin ... end 이네요.

    Marek ...