Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Tools/Trajectories/TrajectoryWidget/main.cpp
T
torsten d5c13033e2 Session 022: Migrate Lts/Tools (72 submodules) to Qt6
- Copied complete Lts/Tools directory from qt5-before to qt6-after
- Updated 32 CMakeLists.txt files (Qt5:: → Qt6::)
- Tools subdirectory already included in parent Lts/CMakeLists.txt
- All 72 tool submodules now present in qt6-migrated-legatus
- Includes: Adler, ArAssets, ConfigX, DBAdministration, DBUpdate,
  DdsView, InfrastructureManagement, and 67 more tools
- C++17 standard (RTI 7.7.0 compatibility maintained)
- Tests deferred until final validation phase

Migration progress:
✅ Lts/Application (68 files)
✅ Lts/DDS (verified Qt6-ready)
✅ Lts/Plugins (60 submodules, verified)
✅ Lts/Projects (5 submodules, verified)
✅ Lts/Proxies (13 submodules, verified)
✅ Lts/Services (47 submodules, verified)
✅ Lts/Tools (72 submodules, copied + CMake updated)
✅ Lts/Viewer (LtsFileDialog, LtsReportDisplay, SituationMap)
🟡 TetraIF (partial)
🟡 Z (partial: nglwidgets, QtSingleApplication, qsql_informix, WMS_Interface)
2026-08-25 14:07:20 +02:00

70 lines
1.6 KiB
C++
Executable File

#include <QApplication>
#include "ballistiksimulator.h"
#include "trajectorywarp.h"
#include "trajectorywidget.h"
#include <QtMath>
Curve trajectoryPointsToCurve(const QVector<TrajectoryPoint>& trajectory,
const QVector3D& color)
{
Curve curve;
curve.color = color;
curve.points.reserve(trajectory.size());
for (const auto& p : trajectory) {
curve.points.append(p.position);
}
return curve;
}
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
BallistikSimulator sim;
double v0 = 400.0;
double winkel = 20.0;
double masse = 0.015;
double cw = 0.29;
double flaeche = 0.00006;
double praezision = 0.2;
QVector<TrajectoryPoint> original = sim.simuliereFlug(v0, winkel, masse, cw, flaeche, praezision);
sim.speichereInCSV(0,original, "flugbahn.csv");
//-------------------------------------------------------------
TrajectoryWidget widget;
widget.resize(800, 600);
widget.setWindowTitle("3D Trajectory Viewer");
QVector3D originalTarget = original.last().position;
// Ziel streuen
QVector3D newTarget = originalTarget + QVector3D( 5.0, 5.0, 5.0);
auto warped = TrajectoryWarp::warpToNewTarget(original, newTarget);
sim.speichereInCSV(1,warped, "flugbahn.csv");
// Kurve 1
Curve c1 = trajectoryPointsToCurve(original, QVector3D(1, 1, 0));
// Kurve 2
Curve c2 = trajectoryPointsToCurve(warped, QVector3D(0, 1, 1));
QVector<Curve> curves;
curves.append(c1);
curves.append(c2);
widget.setCurves(curves);
widget.show();
return app.exec();
}