Merge branch 'master' into master

pull/3708/head
urschanselmann 2021-03-19 18:15:15 +01:00 committed by GitHub
commit 86c05a1154
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 0 deletions

View File

@ -383,6 +383,7 @@ unsigned int LazyDict<T>::Remove(const char *id) {
mAsset.mUsedIds[id] = false;
mObjsById.erase(id);
mObjsByOIndex.erase(index);
delete mObjs[index];
mObjs.erase(mObjs.begin() + index);
//update index of object in mObjs;

View File

@ -325,6 +325,14 @@ bool ExportModel(const aiScene* pOut,
PrintHorBar();
}
aiMatrix4x4 rx, ry, rz;
aiMatrix4x4::RotationX(imp.rot.x, rx);
aiMatrix4x4::RotationY(imp.rot.y, ry);
aiMatrix4x4::RotationZ(imp.rot.z, rz);
pOut->mRootNode->mTransformation *= rx;
pOut->mRootNode->mTransformation *= ry;
pOut->mRootNode->mTransformation *= rz;
// do the actual export, measure time
const clock_t first = clock();
const aiReturn res = globalExporter->Export(pOut,pID,path);
@ -493,6 +501,18 @@ int ProcessStandardArguments(
else if (! strcmp( param, "-v") || ! strcmp( param, "--verbose")) {
fill.verbose = true;
}
else if (!strncmp(params[i], "-rx=", 4) || !strncmp(params[i], "--rotation-x=", 13)) {
std::string value = std::string(params[i] + (params[i][1] == '-' ? 13 : 4));
fill.rot.x = std::stof(value);
}
else if (!strncmp(params[i], "-ry=", 4) || !strncmp(params[i], "--rotation-y=", 13)) {
std::string value = std::string(params[i] + (params[i][1] == '-' ? 13 : 4));
fill.rot.y = std::stof(value);
}
else if (!strncmp(params[i], "-rz=", 4) || !strncmp(params[i], "--rotation-z=", 13)) {
std::string value = std::string(params[i] + (params[i][1] == '-' ? 13 : 4));
fill.rot.z = std::stof(value);
}
else if (! strncmp( param, "--log-out=",10) || ! strncmp( param, "-lo",3)) {
fill.logFile = std::string(params[i]+(params[i][1] == '-' ? 10 : 3));
if (!fill.logFile.length()) {

View File

@ -96,6 +96,7 @@ struct ImportData {
, showLog (false)
, verbose (false)
, log (false)
, rot (aiVector3D(0.f, 0.f, 0.f))
{}
/// Post-processing flags
@ -112,6 +113,9 @@ struct ImportData {
// Need to log?
bool log;
// Export With Rotation
aiVector3D rot;
};
/// \enum AssimpCmdError