void MobileRouteInSim::Init( ARCMobileElement* pMobile ,const ElapsedTime&t) { if(mpMobile!=pMobile) { mpMobile = pMobile; updateCachedata(); DynamicConflictGraph::getInstance().OnMobilePlaneRoute(mpMobile,getPathList(*this),t); } }
QPointF SymbolDataEditor::getEndPoint() { QPointF result = getTranslatePoint(); QStringList pathList = getPathList(); if (pathList.isEmpty() || pathList.last().isEmpty()) return result; QString path = pathList.last(); bool absolutely = path.at(0).isUpper(); if (absolutely) result = getMovePoint(path); else result += getMovePoint(path); int indexOfC = path.indexOf('c', 0, Qt::CaseInsensitive); if (indexOfC > 0) absolutely = path.at(indexOfC).isUpper(); if (absolutely) result = getLastCurvePoint(path); else result += getLastCurvePoint(path); QPointF linePoint = getLinePoint(path); if (!linePoint.isNull()) { if (path.at(path.indexOf('l')).isUpper()) result = linePoint; else result += linePoint; } result = fromViewBox(result); return fromStored(result); }
QPointF SymbolDataEditor::getBeginPoint() { QPointF result = getTranslatePoint(); QStringList pathList = getPathList(); if (pathList.isEmpty() || pathList.first().isEmpty()) return result; QString path = pathList.first(); bool absolutely = path.at(0).isUpper(); if (absolutely) result = getMovePoint(path); else result += getMovePoint(path); result = fromViewBox(result); return fromStored(result); }