1 #ifndef __UNIT_CLICK_CPP__
2 #define __UNIT_CLICK_CPP__
12 template <
class UnitType >
19 #ifdef VARIABLE_LENGTH_PQR
20 Vector TargetPoint( cumulative_transformation_matrix[0],
21 cumulative_transformation_matrix[1],
22 cumulative_transformation_matrix[2] );
23 float SizeScaleFactor = sqrtf( TargetPoint.Dot( TargetPoint ) );
29 for (i = 0; i < nummesh(); i++) {
30 TargetPoint =
Transform( this->cumulative_transformation_matrix, this->meshdata[i]->Position() );
32 mousePoint =
Transform( vw, TargetPoint );
37 activeCam->
GetPQR( CamP, CamQ, CamR );
38 mousePoint =
Transform( CamP, CamQ, CamR, mousePoint );
42 TargetPoint = TargetPoint-mousePoint;
43 if (TargetPoint.Dot( TargetPoint )
45 +this->meshdata[i]->rSize()*this->meshdata[i]->rSize()
46 #ifdef VARIABLE_LENGTH_PQR
47 *SizeScaleFactor*SizeScaleFactor
50 #ifdef VARIABLE_LENGTH_PQR
53 2*err*this->meshdata[i]->rSize()
58 for (
un_iter ui = this->getSubUnits(); (su = *ui); ++ui)
59 if ( (su)->querySphereClickList( mouseX, mouseY, err, activeCam ) )