MCPcopy Create free account
hub / github.com/GarageGames/Torque3D / getCameraTransform

Method getCameraTransform

Engine/source/gui/editor/guiShapeEdPreview.cpp:1122–1161  ·  view source on GitHub ↗

----------------------------------------------------------------------------- RENDERING

Source from the content-addressed store, hash-verified

1120//-----------------------------------------------------------------------------
1121// RENDERING
1122bool GuiShapeEdPreview::getCameraTransform(MatrixF* cameraMatrix)
1123{
1124 // Adjust the camera so that we are still facing the model
1125 if ( mDisplayType == DisplayTypePerspective )
1126 {
1127 Point3F vec;
1128 MatrixF xRot, zRot;
1129 xRot.set( EulerF( mCameraRot.x, 0.0f, 0.0f ));
1130 zRot.set( EulerF( 0.0f, 0.0f, mCameraRot.z ));
1131
1132 cameraMatrix->mul( zRot, xRot );
1133 cameraMatrix->getColumn( 1, &vec );
1134 cameraMatrix->setColumn( 3, mOrbitPos - vec*mOrbitDist );
1135 }
1136 else
1137 {
1138 cameraMatrix->identity();
1139 if ( mModel )
1140 {
1141 Point3F camPos = mModel->getShape()->bounds.getCenter();
1142 F32 offset = mModel->getShape()->bounds.len();
1143
1144 switch (mDisplayType)
1145 {
1146 case DisplayTypeTop: camPos.z += offset; break;
1147 case DisplayTypeBottom: camPos.z -= offset; break;
1148 case DisplayTypeFront: camPos.y += offset; break;
1149 case DisplayTypeBack: camPos.y -= offset; break;
1150 case DisplayTypeRight: camPos.x += offset; break;
1151 case DisplayTypeLeft: camPos.x -= offset; break;
1152 default:
1153 break;
1154 }
1155
1156 cameraMatrix->setColumn( 3, camPos );
1157 }
1158 }
1159
1160 return true;
1161}
1162
1163void GuiShapeEdPreview::computeSceneBounds(Box3F& bounds)
1164{

Callers

nothing calls this directly

Calls 8

getColumnMethod · 0.80
setColumnMethod · 0.80
setMethod · 0.45
mulMethod · 0.45
identityMethod · 0.45
getCenterMethod · 0.45
getShapeMethod · 0.45
lenMethod · 0.45

Tested by

no test coverage detected