// static virtual void LLTracker::drawHUDArrow() { if (!gSavedSettings.getBOOL("RenderTrackerBeacon")) return; if (gViewerWindow->getProgressView()->getVisible()) return; static LLUIColor map_track_color = LLUIColorTable::instance().getColor("MapTrackColor", LLColor4::white); /* tracking autopilot destination has been disabled -- 2004.01.09, Leviathan // Draw dot for autopilot target if (gAgent.getAutoPilot()) { instance()->drawMarker( gAgent.getAutoPilotTargetGlobal(), map_track_color ); return; } */ switch (getTrackingStatus()) { case TRACKING_AVATAR: // Tracked avatar if(LLAvatarTracker::instance().haveTrackingInfo()) { instance()->drawMarker( LLAvatarTracker::instance().getGlobalPos(), map_track_color ); } break; case TRACKING_LANDMARK: instance()->drawMarker( getTrackedPositionGlobal(), map_track_color ); break; case TRACKING_LOCATION: // HACK -- try to keep the location just above the terrain #if 0 // UNHACKED by CRO - keep location where the location is instance()->mTrackedPositionGlobal.mdV[VZ] = 0.9f * instance()->mTrackedPositionGlobal.mdV[VZ] + 0.1f * (LLWorld::getInstance()->resolveLandHeightGlobal(getTrackedPositionGlobal()) + 1.5f); #endif instance()->mTrackedPositionGlobal.mdV[VZ] = llclamp((F32)instance()->mTrackedPositionGlobal.mdV[VZ], LLWorld::getInstance()->resolveLandHeightGlobal(getTrackedPositionGlobal()) + 1.5f, (F32)instance()->getTrackedPositionGlobal().mdV[VZ]); instance()->drawMarker( getTrackedPositionGlobal(), map_track_color ); break; default: break; } }
// static virtual void LLTracker::drawHUDArrow() { /* tracking autopilot destination has been disabled -- 2004.01.09, Leviathan // Draw dot for autopilot target if (gAgent.getAutoPilot()) { instance()->drawMarker( gAgent.getAutoPilotTargetGlobal(), gTrackColor ); return; } */ switch (getTrackingStatus()) { case TRACKING_AVATAR: // Tracked avatar if(LLAvatarTracker::instance().haveTrackingInfo()) { instance()->drawMarker( LLAvatarTracker::instance().getGlobalPos(), gTrackColor ); } break; case TRACKING_LANDMARK: instance()->drawMarker( getTrackedPositionGlobal(), gTrackColor ); break; case TRACKING_LOCATION: // HACK -- try to keep the location just above the terrain #if 0 // UNHACKED by CRO - keep location where the location is instance()->mTrackedPositionGlobal.mdV[VZ] = 0.9f * instance()->mTrackedPositionGlobal.mdV[VZ] + 0.1f * (LLWorld::getInstance()->resolveLandHeightGlobal(getTrackedPositionGlobal()) + 1.5f); #endif instance()->mTrackedPositionGlobal.mdV[VZ] = llclamp((F32)instance()->mTrackedPositionGlobal.mdV[VZ], LLWorld::getInstance()->resolveLandHeightGlobal(getTrackedPositionGlobal()) + 1.5f, (F32)instance()->getTrackedPositionGlobal().mdV[VZ]); instance()->drawMarker( getTrackedPositionGlobal(), gTrackColor ); break; default: break; } }