OOP 객체를 반환하는 메소드를 얻는 데 도움이 필요합니다.나는 JSL의 벡터 클래스에 대해 연구 중이다. 정규화 된 벡터 버전을 반환하는 메서드를 갖고 싶습니다. 아래 스크립트와 오류 메시지가 있습니다. 감사!
Clear Log();
Clear Globals();
Define Class(
"vector",
x = 0;
y = 0;
z = 0;
_init_ = Method( {a, b, c = 0},
x = a;
y = b;
z = c;
);
_show_ = Method( {},
Return( x, y, z )
);
mag = Method( {},
magnitude = Sqrt( x ^ 2 + y ^ 2 + z ^ 2 )
);
normalize = Method( {},
nv = vector(0,0,0);
length = Sqrt( x ^ 2 + y ^ 2 + z ^ 2 );
show(length);
nv:x = x / length;
nv:y = y / length;
nv:z = z / length;
nv;
);
);
bob = New Object( vector( 4, 2 ) );
Show( bob );
bob<<NORMALIZE></NORMALIZE>이름 미해결 : '벡터'의 액세스 또는 평가 벡터, 벡터 (0, 0, 0)
Re : OOP 개체를 반환하는 메서드를 가져 오는 데 도움이 필요합니다.저는 일반 수업과 JMP 수업에 관해서는 초보자입니다. 작동 방식 :
Clear Log();
Clear Globals();
Define Class(
"vector",
x = 0;
y = 0;
z = 0;
_init_ = Method( {a, b, c = 0},
x = a;
y = b;
z = c;
);
_show_ = Method( {},
Return( x, y, z )
);
mag = Method( {},
magnitude = Sqrt( x ^ 2 + y ^ 2 + z ^ 2 )
);
normalize = Method( {},
nv = [0,0,0];
length = Sqrt( x ^ 2 + y ^ 2 + z ^ 2 );
show(length);
nv[1] = x / length;
nv[2] = y / length;
nv[3] = z / length;
Print(char(nv));
nv;
);
);
bob = New Object( vector( 4, 2 ) );
Show( bob );
bob = bob:normalize();
show(bob);
Ther는 자기를 넘기는 방법입니다. JMP 스크립팅 가이드를 제안하고이 웹 사이트에서 클래스를 검색하십시오.
Re : OOP 개체를 반환하는 메서드를 가져 오는 데 도움이 필요합니다.그루지야,
답장을 보내 주셔서 감사합니다. 개체의 복사본을 만든 다음이를 정상화하는 데 사용할 수있는 개체에 대한 "복제본"메시지를 발견했습니다. 주변을 둘러보고 "복잡한"클래스 예제에서와 같이 직접 메소드에서 객체를 반환하는 방법을 찾을 수 있는지 확인합니다.
남자