mirror of
https://github.com/leozide/leocad.git
synced 2026-07-27 19:56:49 +00:00
Removed special case camera property functions.
This commit is contained in:
@@ -179,6 +179,36 @@ bool lcCamera::SetProjection(lcCameraProjection CameraProjection)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool lcCamera::SetFOV(float Fovy)
|
||||
{
|
||||
if (m_fovy == Fovy)
|
||||
return false;
|
||||
|
||||
m_fovy = Fovy;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool lcCamera::SetNearPlane(float NearPlane)
|
||||
{
|
||||
if (m_zNear == NearPlane)
|
||||
return false;
|
||||
|
||||
m_zNear = NearPlane;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool lcCamera::SetFarPlane(float FarPlane)
|
||||
{
|
||||
if (m_zFar == FarPlane)
|
||||
return false;
|
||||
|
||||
m_zFar = FarPlane;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void lcCamera::SaveLDraw(QTextStream& Stream) const
|
||||
{
|
||||
const QLatin1String LineEnding("\r\n");
|
||||
@@ -727,8 +757,14 @@ bool lcCamera::SetPropertyValue(lcObjectPropertyId PropertyId, lcStep Step, bool
|
||||
return SetProjection(static_cast<lcCameraProjection>(Value.toInt()));
|
||||
|
||||
case lcObjectPropertyId::CameraFOV:
|
||||
return SetFOV(Value.toFloat());
|
||||
|
||||
case lcObjectPropertyId::CameraNear:
|
||||
return SetNearPlane(Value.toFloat());
|
||||
|
||||
case lcObjectPropertyId::CameraFar:
|
||||
return SetFarPlane(Value.toFloat());
|
||||
|
||||
case lcObjectPropertyId::CameraPositionX:
|
||||
case lcObjectPropertyId::CameraPositionY:
|
||||
case lcObjectPropertyId::CameraPositionZ:
|
||||
|
||||
@@ -90,6 +90,9 @@ public:
|
||||
}
|
||||
|
||||
bool SetProjection(lcCameraProjection CameraProjection);
|
||||
bool SetFOV(float Fovy);
|
||||
bool SetNearPlane(float NearPlane);
|
||||
bool SetFarPlane(float FarPlane);
|
||||
|
||||
quint32 GetAllowedTransforms() const override
|
||||
{
|
||||
|
||||
@@ -3834,48 +3834,6 @@ void lcModel::SetCameraProjection(lcCamera* Camera, lcCameraProjection CameraPro
|
||||
gMainWindow->UpdateSelectedObjects(false);
|
||||
}
|
||||
|
||||
void lcModel::SetCameraFOV(lcCamera* Camera, float FOV, bool Checkpoint)
|
||||
{
|
||||
if (Camera->m_fovy == FOV)
|
||||
return;
|
||||
|
||||
Camera->m_fovy = FOV;
|
||||
Camera->UpdatePosition(mCurrentStep);
|
||||
|
||||
if (Checkpoint)
|
||||
SaveCheckpoint(tr("Changing FOV"));
|
||||
|
||||
UpdateAllViews();
|
||||
}
|
||||
|
||||
void lcModel::SetCameraZNear(lcCamera* Camera, float ZNear, bool Checkpoint)
|
||||
{
|
||||
if (Camera->m_zNear == ZNear)
|
||||
return;
|
||||
|
||||
Camera->m_zNear = ZNear;
|
||||
Camera->UpdatePosition(mCurrentStep);
|
||||
|
||||
if (Checkpoint)
|
||||
SaveCheckpoint(tr("Editing Camera"));
|
||||
|
||||
UpdateAllViews();
|
||||
}
|
||||
|
||||
void lcModel::SetCameraZFar(lcCamera* Camera, float ZFar, bool Checkpoint)
|
||||
{
|
||||
if (Camera->m_zFar == ZFar)
|
||||
return;
|
||||
|
||||
Camera->m_zFar = ZFar;
|
||||
Camera->UpdatePosition(mCurrentStep);
|
||||
|
||||
if (Checkpoint)
|
||||
SaveCheckpoint(tr("Editing Camera"));
|
||||
|
||||
UpdateAllViews();
|
||||
}
|
||||
|
||||
void lcModel::SetObjectsProperty(const std::vector<lcObject*>& Objects, lcObjectPropertyId PropertyId, QVariant Value, bool AddUndo)
|
||||
{
|
||||
bool Modified = false;
|
||||
|
||||
@@ -392,9 +392,6 @@ public:
|
||||
void EndPropertyEdit(lcObjectPropertyId PropertyId, bool Accept);
|
||||
|
||||
void SetCameraProjection(lcCamera* Camera, lcCameraProjection CameraProjection);
|
||||
void SetCameraFOV(lcCamera* Camera, float FOV, bool Checkpoint);
|
||||
void SetCameraZNear(lcCamera* Camera, float ZNear, bool Checkpoint);
|
||||
void SetCameraZFar(lcCamera* Camera, float ZFar, bool Checkpoint);
|
||||
|
||||
void ShowPropertiesDialog();
|
||||
void ShowSelectByNameDialog();
|
||||
|
||||
@@ -287,6 +287,7 @@ void lcPropertiesWidget::FloatChanged(const QString& TextValue)
|
||||
float Value = lcParseValueLocalized(TextValue);
|
||||
|
||||
ChangeFloatValue(PropertyId, Value, true);
|
||||
qDebug() << Value;
|
||||
}
|
||||
|
||||
void lcPropertiesWidget::ChangeFloatValue(lcObjectPropertyId PropertyId, float Value, bool Dragging)
|
||||
@@ -461,17 +462,9 @@ void lcPropertiesWidget::ChangeFloatValue(lcObjectPropertyId PropertyId, float V
|
||||
}
|
||||
else if (Camera)
|
||||
{
|
||||
if (PropertyId == lcObjectPropertyId::CameraFOV)
|
||||
if (PropertyId == lcObjectPropertyId::CameraFOV || PropertyId == lcObjectPropertyId::CameraNear || PropertyId == lcObjectPropertyId::CameraFar)
|
||||
{
|
||||
Model->SetCameraFOV(Camera, Value, !Dragging);
|
||||
}
|
||||
else if (PropertyId == lcObjectPropertyId::CameraNear)
|
||||
{
|
||||
Model->SetCameraZNear(Camera, Value, !Dragging);
|
||||
}
|
||||
else if (PropertyId == lcObjectPropertyId::CameraFar)
|
||||
{
|
||||
Model->SetCameraZFar(Camera, Value, !Dragging);
|
||||
Model->SetObjectsProperty(mFocusObject ? std::vector<lcObject*>{ mFocusObject } : mSelection, PropertyId, Value, !Dragging);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1164,8 +1157,8 @@ void lcPropertiesWidget::CreateWidgets()
|
||||
AddSpacing();
|
||||
|
||||
AddFloatProperty(lcObjectPropertyId::CameraFOV, tr("FOV"), tr("Field of view in degrees"), false, 0.1f, 179.9f);
|
||||
AddFloatProperty(lcObjectPropertyId::CameraNear, tr("Near"), tr("Near clipping distance"), false, 0.001f, FLT_MAX);
|
||||
AddFloatProperty(lcObjectPropertyId::CameraFar, tr("Far"), tr("Far clipping distance"), false, 0.001f, FLT_MAX);
|
||||
AddFloatProperty(lcObjectPropertyId::CameraNear, tr("Near"), tr("Near clipping distance"), false, 0.1f, FLT_MAX);
|
||||
AddFloatProperty(lcObjectPropertyId::CameraFar, tr("Far"), tr("Far clipping distance"), false, 0.1f, FLT_MAX);
|
||||
|
||||
AddSpacing();
|
||||
|
||||
|
||||
+27
-21
@@ -18,24 +18,30 @@ QString lcObject::GetCheckpointString(lcObjectPropertyId PropertyId)
|
||||
switch (PropertyId)
|
||||
{
|
||||
case lcObjectPropertyId::PieceId:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Piece Id");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Piece");
|
||||
|
||||
case lcObjectPropertyId::PieceColor:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Piece Color");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Chang Piece Color");
|
||||
|
||||
case lcObjectPropertyId::PieceStepShow:
|
||||
case lcObjectPropertyId::PieceStepHide:
|
||||
break;
|
||||
|
||||
case lcObjectPropertyId::CameraName:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Renaming Camera");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Rename Camera");
|
||||
|
||||
case lcObjectPropertyId::CameraProjection:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Camera Projection");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Camera Projection");
|
||||
|
||||
case lcObjectPropertyId::CameraFOV:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Camera FOV");
|
||||
|
||||
case lcObjectPropertyId::CameraNear:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Camera Near Plane");
|
||||
|
||||
case lcObjectPropertyId::CameraFar:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Camera Far Plane");
|
||||
|
||||
case lcObjectPropertyId::CameraPositionX:
|
||||
case lcObjectPropertyId::CameraPositionY:
|
||||
case lcObjectPropertyId::CameraPositionZ:
|
||||
@@ -48,56 +54,56 @@ QString lcObject::GetCheckpointString(lcObjectPropertyId PropertyId)
|
||||
break;
|
||||
|
||||
case lcObjectPropertyId::LightName:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Renaming Light");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Rename Light");
|
||||
|
||||
case lcObjectPropertyId::LightType:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light Type");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light Type");
|
||||
|
||||
case lcObjectPropertyId::LightColor:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light Color");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light Color");
|
||||
|
||||
case lcObjectPropertyId::LightBlenderPower:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light Blender Power");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light Blender Power");
|
||||
|
||||
case lcObjectPropertyId::LightPOVRayPower:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light POV-Ray Power");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light POV-Ray Power");
|
||||
|
||||
case lcObjectPropertyId::LightCastShadow:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light Shadow");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light Shadow");
|
||||
|
||||
case lcObjectPropertyId::LightPOVRayFadeDistance:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light POV-Ray Fade Distance");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light POV-Ray Fade Distance");
|
||||
|
||||
case lcObjectPropertyId::LightPOVRayFadePower:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light POV-Ray Fade Power");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light POV-Ray Fade Power");
|
||||
|
||||
case lcObjectPropertyId::LightBlenderRadius:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light Blender Radius");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light Blender Radius");
|
||||
|
||||
case lcObjectPropertyId::LightBlenderAngle:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Light Blender Angle");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Light Blender Angle");
|
||||
|
||||
case lcObjectPropertyId::LightAreaSizeX:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Area Light X Size");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Area Light X Size");
|
||||
|
||||
case lcObjectPropertyId::LightAreaSizeY:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Area Light Y Size");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Area Light Y Size");
|
||||
|
||||
case lcObjectPropertyId::LightSpotConeAngle:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Spot Light Cone Angle");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spot Light Cone Angle");
|
||||
|
||||
case lcObjectPropertyId::LightSpotPenumbraAngle:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Spot Light Penumbra Angle");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spot Light Penumbra Angle");
|
||||
|
||||
case lcObjectPropertyId::LightPOVRaySpotTightness:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Spot Light POV-Ray Tightness");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Spot Light POV-Ray Tightness");
|
||||
|
||||
case lcObjectPropertyId::LightAreaShape:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Area Light Shape");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Area Light Shape");
|
||||
|
||||
case lcObjectPropertyId::LightPOVRayAreaGridX:
|
||||
case lcObjectPropertyId::LightPOVRayAreaGridY:
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Changing Area Light POV-Ray Grid");
|
||||
return QT_TRANSLATE_NOOP("Checkpoint", "Change Area Light POV-Ray Grid");
|
||||
|
||||
case lcObjectPropertyId::ObjectPositionX:
|
||||
case lcObjectPropertyId::ObjectPositionY:
|
||||
|
||||
Reference in New Issue
Block a user