![]() |
Qt 6.x
The Qt SDK
|
#include "qpathclipper_p.h"
#include <private/qbezier_p.h>
#include <private/qdatabuffer_p.h>
#include <private/qnumeric_p.h>
#include <qmath.h>
#include <algorithm>
#include <qdebug.h>
Go to the source code of this file.
Classes | |
struct | QIntersection |
class | QIntersectionFinder |
class | QKdPointTree |
struct | QKdPointTree::Node |
class | QKdPointFinder |
struct | QCrossingEdge |
|
static |
Definition at line 1273 of file qpathclipper.cpp.
References addLineTo(), QWingedEdge::TraversalStatus::direction, QWingedEdge::TraversalStatus::edge, QList< T >::first(), QPathEdge::flag, QPathEdge::Forward, QPathEdge::LeftTraversal, list, QWingedEdge::TraversalStatus::traversal, and QPathEdge::vertex().
Referenced by QV4::Compiler::Codegen::binopHelper(), combineRecords(), QQmlDelegateModelPrivate::delegateChanged(), QQuickItemViewAttached::emitAdd(), ensureDetached(), org.qtproject.qt.android.bluetooth.QtBluetoothBroadcastReceiver::getConnectedDevices(), QTextEngine::justify(), QAbstractSliderPrivate::overflowSafeAdd(), QDateTimeParser::parseFormat(), QtFontStyle::pixelSize(), QHttpNetworkConnectionPrivate::prepareRequest(), qt_socks5_get_host_address_and_port(), DmaBufServerBuffer::resourceForClient(), DrmEglServerBuffer::resourceForClient(), LibHybrisEglServerBuffer::resourceForClient(), ShmServerBuffer::resourceForClient(), VulkanServerBuffer::resourceForClient(), QOffscreenIntegration::setConfiguration(), org.qtproject.qt.android.bindings.QtApplication::setQtContextDelegate(), QWingedEdge::toPath(), and QGeoTiledMappingManagerEngine::updateTileRequests().
|
static |
Definition at line 1251 of file qpathclipper.cpp.
References d1, d2, dot(), QPainterPath::LineToElement, qFuzzyIsNull(), QPainterPath::Element::type, QPointF::x(), and QPointF::y().
Referenced by add().
|
static |
Definition at line 1704 of file qpathclipper.cpp.
References QPathClipper::BoolAnd, QPathClipper::BoolOr, QPathClipper::BoolSub, Q_ASSERT, and QPathClipper::Simplify.
|
static |
Definition at line 1426 of file qpathclipper.cpp.
References QWingedEdge::TraversalStatus::direction, QWingedEdge::TraversalStatus::edge, QPathEdge::Forward, QPathEdge::LeftTraversal, list, and QWingedEdge::TraversalStatus::traversal.
|
static |
Definition at line 1090 of file qpathclipper.cpp.
References QWingedEdge::TraversalStatus::direction, QPathVertex::edge, QWingedEdge::TraversalStatus::edge, QPathEdge::first, QWingedEdge::TraversalStatus::flip(), list, Q_ASSERT, QPathEdge::RightTraversal, QPathEdge::second, and QWingedEdge::TraversalStatus::traversal.
Referenced by QWingedEdge::addEdge().
Definition at line 40 of file qpathclipper.cpp.
References fuzzyIsNull().
Referenced by QPathSegments::addPath(), and isLine().
Definition at line 626 of file qpathclipper.cpp.
References i, Q_ASSERT, QPointF::x(), and QPointF::y().
Referenced by QQuickVisualTestUtils::QQuickApplicationHelper::QQuickApplicationHelper(), TestCaseCollector::TestCaseCollector(), QQmlJS::Dom::QmlFile::addComponent(), QQmlPropertyCacheAliasCreator< ObjectContainer >::appendAliasesToPropertyCache(), appendComponentIfPresent(), QKdPointTree::build(), QQmlDataTest::canImportModule(), collectExtraVersions(), QQuickControlsTestUtils::ComponentCreator::createComponent(), QQuickDesignerSupportItems::createComponent(), QQmlObjectCreator::createComponent(), QQuickItemViewPrivate::createComponentItem(), QQuickSwipePrivate::createDelegateItem(), QQuickFolderBreadcrumbBarPrivate::createDelegateItem(), createDimmer(), createDummyWindow(), QQuickPopupPrivate::createOverlay(), QtObject::createQmlObject(), QCoreGraphicsPaintEngine::drawTiledPixmap(), QQmlJS::Dom::QQmlDomAstCreator::endVisit(), QQmlJSImportVisitor::endVisit(), Expectations::expectFive(), Expectations::expectFour(), Expectations::expectOne(), Expectations::expectThree(), Expectations::expectTwo(), idsCompletions(), QQmlIncubatorPrivate::incubate(), QQmlIncubatorPrivate::incubateCppBasedComponent(), QQmlComponentPrivate::incubateObject(), QQuickToolTipAttachedPrivate::instance(), QQmlJS::AST::UiInlineComponent::lastSourceLocation(), main(), operator<<(), QQmlJS::Dom::DomItem::operator[](), QQmlJS::Dom::MutableDomItem::operator[](), QQmlJS::Dom::MutableDomItem::operator[](), QQmlJS::Dom::MutableDomItem::operator[](), QAbstractTextDocumentLayout::registerHandler(), QQmlComponentAndAliasResolver< ObjectContainer >::resolve(), QQuickView::setContent(), QQuickWidget::setContent(), QQmlComponent::setInitialProperties(), QGraphicsLayoutItemPrivate::setSizeComponent(), QOpenGLTexture::setSwizzleMask(), QQmlEnginePrivate::singletonInstance(), statusChanged(), QOpenGLTexture::swizzleMask(), QAbstractTextDocumentLayout::unregisterHandler(), QQuickControlsTestUtils::QQuickStyleHelper::updateStyle(), QQmlJSImportVisitor::visit(), withComponent(), and QQmlJSStreamWriter::writeStartObject().
|
static |
Definition at line 1120 of file qpathclipper.cpp.
References normalize(), Q_PI, and qAtan2().
Referenced by QWingedEdge::addEdge().
Definition at line 47 of file qpathclipper.cpp.
Referenced by addLineTo(), Automaton::buildIncludesDigraph(), Automaton::buildLookbackSets(), checkAsciiDomainName(), convertToAscii(), createTypeForUrl(), QPen::dashPattern(), QQmlCustomParser::evaluateEnum(), QmlIR::IRBuilder::extractVersion(), QQmlJS::Dom::Path::fromString(), QCoreApplicationPrivate::initLocale(), QHstsCache::isKnownHost(), QGeoProjectionWebMercator::isProjectable(), QLibraryInfoPrivate::locationInfo(), QQuick3DQuaternionUtils::lookAt(), QQuaternion::nlerp(), QV4::RuntimeHelpers::numberToString(), QDashStroker::patternForStyle(), qSplitTableName(), qt_ACE_do(), qtVersion(), QQmlImportNamespace::resolveType(), rotationQuaternionForLookAt(), shift(), QQuaternion::slerp(), testSideOfLineByNormal(), QTransform::type(), QX11PaintEngine::updatePen(), and QQmlDelegateModelPrivate::variantValue().
|
static |
Definition at line 1746 of file qpathclipper.cpp.
References QPathEdge::first, i, list, and QPathEdge::second.
Definition at line 1451 of file qpathclipper.cpp.
References qFuzzyCompare().
|
inlinestatic |
The algorithm is as follows:
(Optional) Simplify the resulting winged edge structure by merging shared edges.
Definition at line 32 of file qpathclipper.cpp.
Referenced by comparePoints(), and QKdPointFinder::operator()().
|
static |
Definition at line 854 of file qpathclipper.cpp.
References comparePoints(), QBezier::pt1(), QBezier::pt2(), QBezier::pt3(), and QBezier::pt4().
Referenced by QPathSegments::addPath(), and QuadPath::Element::extent().
|
static |
Definition at line 52 of file qpathclipper.cpp.
References qSqrt().
Referenced by computeAngle(), and QRhiGles2::executeCommandBuffer().
Q_DECLARE_TYPEINFO | ( | QCrossingEdge | , |
Q_PRIMITIVE_TYPE | |||
) |
Q_DECLARE_TYPEINFO | ( | QIntersection | , |
Q_PRIMITIVE_TYPE | |||
) |
InputIterator qFuzzyFind | ( | InputIterator | first, |
InputIterator | last, | ||
qreal | val | ||
) |
Definition at line 1444 of file qpathclipper.cpp.
References qFuzzyCompare(), and QT_PREPEND_NAMESPACE().
void qTraverseKdPointTree | ( | QKdPointTree::Node & | node, |
T & | t, | ||
int | depth = 0 |
||
) |
Definition at line 612 of file qpathclipper.cpp.
References QKdPointTree::Node::left, QT_PREPEND_NAMESPACE(), QKdPointTree::Node::right, QKdPointTree::TraverseBoth, QKdPointTree::TraverseLeft, and QKdPointTree::TraverseRight.
|
static |
Definition at line 1670 of file qpathclipper.cpp.
References QWingedEdge::TraversalStatus::direction, QWingedEdge::TraversalStatus::edge, QPathEdge::flag, QPathEdge::Forward, QPathEdge::LeftTraversal, list, qDebug, and QWingedEdge::TraversalStatus::traversal.