Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
Een wrapper voor ID2D1Geometry.
Syntaxis
class CD2DGeometry : public CD2DResource;
Leden
Openbare constructors
| Naam | Description |
|---|---|
| CD2DGeometry::CD2DGeometry | Maakt een CD2DGeometry-object. |
| CD2DGeometry::~CD2DGeometry | De destructor. Wordt aangeroepen wanneer een D2D geometrieobject wordt vernietigd. |
Openbare methoden
| Naam | Description |
|---|---|
| CD2DGeometry::Attach | Bestaande resource-interface koppelen aan het object |
| CD2DGeometry::CombineWithGeometry | Combineert deze geometrie met de opgegeven geometrie en slaat het resultaat op in een ID2D1SimplifiedGeometrySink. |
| CD2DGeometry::CompareWithGeometry | Beschrijft het snijpunt tussen deze geometrie en de opgegeven geometrie. De vergelijking wordt uitgevoerd met behulp van de opgegeven afvlakkende tolerantie. |
| CD2DGeometry::ComputeArea | Berekent het gebied van de geometrie nadat deze is getransformeerd door de opgegeven matrix en afgevlakt met behulp van de opgegeven tolerantie. |
| CD2DGeometry::ComputeLength | Berekent de lengte van de geometrie alsof elk segment in een lijn is uitgeschreven. |
| CD2DGeometry::ComputePointAtLength | Berekent de punt- en tangensvector op de opgegeven afstand langs de geometrie nadat deze is getransformeerd door de opgegeven matrix en afgevlakt met behulp van de opgegeven tolerantie. |
| CD2DGeometry::D estroy | Vernietigt een CD2DGeometry-object. (Overschrijft CD2DResource::D estroy.) |
| CD2DGeometry::D etach | Resource-interface loskoppelen van het object |
| CD2DGeometry::FillContainsPoint | Geeft aan of het gebied dat door de geometrie is gevuld, het opgegeven punt zou bevatten op basis van de opgegeven afvlakkende tolerantie. |
| CD2DGeometry::Get | Retourneert id2D1Geometry-interface |
| CD2DGeometry::GetBounds | |
| CD2DGeometry::GetWidenedBounds | Hiermee haalt u de grenzen van de geometrie op nadat deze is verbreed door de opgegeven lijnbreedte en -stijl en getransformeerd door de opgegeven matrix. |
| CD2DGeometry::IsValid | Controleert de geldigheid van resources (overschrijft CD2DResource::IsValid.) |
| CD2DGeometry::Outline | Berekent het overzicht van de geometrie en schrijft het resultaat naar een ID2D1SimplifiedGeometrySink. |
| CD2DGeometry::Simplify | Hiermee maakt u een vereenvoudigde versie van de geometrie die alleen lijnen en (optioneel) kubieke Bezier-curven bevat en schrijft u het resultaat naar een ID2D1SimplifiedGeometrySink. |
| CD2DGeometry::StrokeContainsPoint | Bepaalt of de lijn van de geometrie het opgegeven punt bevat op basis van de opgegeven lijndikte, stijl en transformatie. |
| CD2DGeometry::Tessellate | Hiermee maakt u een reeks driehoeken met de klok mee die de geometrie bedekken nadat deze is getransformeerd met behulp van de opgegeven matrix en afgevlakt met behulp van de opgegeven tolerantie. |
| CD2DGeometry::Widen | Verbreedt de geometrie door de opgegeven lijn en schrijft het resultaat naar een ID2D1SimplifiedGeometrySink nadat deze is getransformeerd door de opgegeven matrix en afgevlakt met behulp van de opgegeven tolerantie. |
Openbare operators
| Naam | Description |
|---|---|
| CD2DGeometry::operator ID2D1Geometry* | Retourneert id2D1Geometry-interface |
Beveiligde gegevensleden
| Naam | Description |
|---|---|
| CD2DGeometry::m_pGeometry | Een aanwijzer naar een ID2D1Geometry. |
Overnamehiërarchie
CD2DGeometry
Requirements
Header: afxrendertarget.h
CD2DGeometry::~CD2DGeometry
De destructor. Wordt aangeroepen wanneer een D2D geometrieobject wordt vernietigd.
virtual ~CD2DGeometry();
CD2DGeometry::Attach
Bestaande resource-interface koppelen aan het object
void Attach(ID2D1Geometry* pResource);
Parameterwaarden
pResource
Bestaande resource-interface. Kan niet NULL zijn
CD2DGeometry::CD2DGeometry
Maakt een CD2DGeometry-object.
CD2DGeometry(
CRenderTarget* pParentTarget,
BOOL bAutoDestroy = TRUE);
Parameterwaarden
pParentTarget
Een aanwijzer naar het renderdoel.
bAutoDestroy
Geeft aan dat het object wordt vernietigd door eigenaar (pParentTarget).
CD2DGeometry::CombineWithGeometry
Combineert deze geometrie met de opgegeven geometrie en slaat het resultaat op in een ID2D1SimplifiedGeometrySink.
BOOL CombineWithGeometry(
CD2DGeometry& inputGeometry,
D2D1_COMBINE_MODE combineMode,
const D2D1_MATRIX_3X2_F& inputGeometryTransform,
ID2D1SimplifiedGeometrySink* geometrySink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
inputGeometry
De geometrie die moet worden gecombineerd met dit exemplaar.
combineMode
Het type combinatiebewerking dat moet worden uitgevoerd.
inputGeometryTransform
De transformatie die moet worden toegepast op inputGeometry voordat deze wordt gecombineerd.
geometrieSink
Het resultaat van de combinatiebewerking.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrieën. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::CompareWithGeometry
Beschrijft het snijpunt tussen deze geometrie en de opgegeven geometrie. De vergelijking wordt uitgevoerd met behulp van de opgegeven afvlakkende tolerantie.
D2D1_GEOMETRY_RELATION CompareWithGeometry(
CD2DGeometry& inputGeometry,
const D2D1_MATRIX_3X2_F& inputGeometryTransform,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
inputGeometry
De geometrie die moet worden getest.
inputGeometryTransform
De transformatie die moet worden toegepast op inputGeometry.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrieën. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::ComputeArea
Berekent het gebied van de geometrie nadat deze is getransformeerd door de opgegeven matrix en afgevlakt met behulp van de opgegeven tolerantie.
BOOL ComputeArea(
const D2D1_MATRIX_3X2_F& worldTransform,
FLOAT& area,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
worldTransform
De transformatie die moet worden toegepast op deze geometrie voordat het gebied ervan wordt computing.
Gebied
Wanneer deze methode wordt geretourneerd, bevat een aanwijzer naar het gebied van de getransformeerde, afgevlakte versie van deze geometrie. U moet opslag toewijzen voor deze parameter.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrie. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::ComputeLength
Berekent de lengte van de geometrie alsof elk segment in een lijn is uitgeschreven.
BOOL ComputeLength(
const D2D1_MATRIX_3X2_F& worldTransform,
FLOAT& length,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
worldTransform
De transformatie die moet worden toegepast op de geometrie voordat de lengte ervan wordt berekend.
length
Wanneer deze methode wordt geretourneerd, bevat deze een aanwijzer naar de lengte van de geometrie. Voor gesloten geometrieën bevat de lengte een impliciet slotsegment. U moet opslag toewijzen voor deze parameter.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrie. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::ComputePointAtLength
Berekent de punt- en tangensvector op de opgegeven afstand langs de geometrie nadat deze is getransformeerd door de opgegeven matrix en afgevlakt met behulp van de opgegeven tolerantie.
BOOL ComputePointAtLength(
FLOAT length,
const D2D1_MATRIX_3X2_F& worldTransform,
CD2DPointF& point,
CD2DPointF& unitTangentVector,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
length
De afstand langs de geometrie van het punt en de tangens om te vinden. Als deze afstand kleiner is dan 0, berekent deze methode het eerste punt in de geometrie. Als deze afstand groter is dan de lengte van de geometrie, berekent deze methode het laatste punt in de geometrie.
worldTransform
De transformatie die moet worden toegepast op de geometrie voordat het opgegeven punt en de tangens worden berekend.
Punt
De locatie op de opgegeven afstand langs de geometrie. Als de geometrie leeg is, bevat dit punt NaN als de x- en y-waarden.
unitTangentVector
Wanneer deze methode retourneert, bevat deze een aanwijzer naar de tangensvector op de opgegeven afstand langs de geometrie. Als de geometrie leeg is, bevat deze vector NaN als de x- en y-waarden. U moet opslag toewijzen voor deze parameter.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrie. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::D estroy
Vernietigt een CD2DGeometry-object.
virtual void Destroy();
CD2DGeometry::D etach
Resource-interface loskoppelen van het object
ID2D1Geometry* Detach();
Retourwaarde
Aanwijzer naar losgekoppelde resourceinterface.
CD2DGeometry::FillContainsPoint
Geeft aan of het gebied dat door de geometrie is gevuld, het opgegeven punt zou bevatten op basis van de opgegeven afvlakkende tolerantie.
BOOL FillContainsPoint(
CD2DPointF point,
const D2D1_MATRIX_3X2_F& worldTransform,
BOOL* contains,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
Punt
Het punt om te testen.
worldTransform
De transformatie die moet worden toegepast op de geometrie voorafgaand aan het testen op insluiting.
bevat
Wanneer deze methode retourneert, bevat het een boolwaarde die WAAR is als het gebied dat door de geometrie is gevuld punt bevat; anders, ONWAAR. U moet opslag toewijzen voor deze parameter.
flatteningTolerance
De numerieke nauwkeurigheid waarmee het exacte geometrische pad en het pad snijpunt worden berekend. Punten die de opvulling missen door minder dan de tolerantie, worden nog steeds als binnen beschouwd. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::Get
Retourneert id2D1Geometry-interface
ID2D1Geometry* Get();
Retourwaarde
Wijs een ID2D1Geometry-interface of NULL aan als het object nog niet is geïnitialiseerd.
CD2DGeometry::GetBounds
BOOL GetBounds(
const D2D1_MATRIX_3X2_F& worldTransform,
CD2DRectF& bounds) const;
Parameterwaarden
worldTransform
Grenzen
Retourwaarde
CD2DGeometry::GetWidenedBounds
Hiermee haalt u de grenzen van de geometrie op nadat deze is verbreed door de opgegeven lijnbreedte en -stijl en getransformeerd door de opgegeven matrix.
BOOL GetWidenedBounds(
FLOAT strokeWidth,
ID2D1StrokeStyle* strokeStyle,
const D2D1_MATRIX_3X2_F& worldTransform,
CD2DRectF& bounds,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
strokeWidth
De hoeveelheid waarmee de geometrie moet worden uitgebreid door zijn omtrek te aaien.
strokeStyle
De stijl van de lijn die de geometrie breder maakt.
worldTransform
Een transformatie die moet worden toegepast op de geometrie nadat de geometrie is getransformeerd en nadat de geometrie is gestreken.
Grenzen
Wanneer deze methode wordt geretourneerd, bevat deze de grenzen van de verbrede geometrie. U moet opslag toewijzen voor deze parameter.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrieën. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::IsValid
Controleert de geldigheid van resources
virtual BOOL IsValid() const;
Retourwaarde
WAAR als de resource geldig is; anders ONWAAR.
CD2DGeometry::m_pGeometry
Een aanwijzer naar een ID2D1Geometry.
ID2D1Geometry* m_pGeometry;
CD2DGeometry::operator ID2D1Geometry*
Retourneert id2D1Geometry-interface
operator ID2D1Geometry*();
Retourwaarde
Wijs een ID2D1Geometry-interface of NULL aan als het object nog niet is geïnitialiseerd.
CD2DGeometry::Outline
Berekent het overzicht van de geometrie en schrijft het resultaat naar een ID2D1SimplifiedGeometrySink.
BOOL Outline(
const D2D1_MATRIX_3X2_F& worldTransform,
ID2D1SimplifiedGeometrySink* geometrySink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
worldTransform
De transformatie die moet worden toegepast op het geometriekader.
geometrieSink
De ID2D1SimplifiedGeometrySink waaraan de omtrek van de geometrie wordt toegevoegd.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrie. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::Simplify
Hiermee maakt u een vereenvoudigde versie van de geometrie die alleen lijnen en (optioneel) kubieke Bezier-curven bevat en schrijft u het resultaat naar een ID2D1SimplifiedGeometrySink.
BOOL Simplify(
D2D1_GEOMETRY_SIMPLIFICATION_OPTION simplificationOption,
const D2D1_MATRIX_3X2_F& worldTransform,
ID2D1SimplifiedGeometrySink* geometrySink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
vereenvoudigingOption
Een waarde die aangeeft of de vereenvoudigde geometrie curven moet bevatten.
worldTransform
De transformatie die moet worden toegepast op de vereenvoudigde geometrie.
geometrieSink
De ID2D1SimplifiedGeometrySink waaraan de vereenvoudigde geometrie wordt toegevoegd.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrie. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::StrokeContainsPoint
Bepaalt of de lijn van de geometrie het opgegeven punt bevat op basis van de opgegeven lijndikte, stijl en transformatie.
BOOL StrokeContainsPoint(
CD2DPointF point,
FLOAT strokeWidth,
ID2D1StrokeStyle* strokeStyle,
const D2D1_MATRIX_3X2_F& worldTransform,
BOOL* contains,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
Punt
Het punt om te testen op insluiting.
strokeWidth
De dikte van de lijn die moet worden toegepast.
strokeStyle
De stijl van de lijn die moet worden toegepast.
worldTransform
De transformatie die moet worden toegepast op de gestreken geometrie.
bevat
Wanneer deze methode retourneert, bevat een Booleaanse waarde die is ingesteld op TRUE als de stroke van de geometrie het opgegeven punt bevat; anders, ONWAAR. U moet opslag toewijzen voor deze parameter.
flatteningTolerance
De numerieke nauwkeurigheid waarmee het exacte geometrische pad en het pad snijpunt worden berekend. Punten die de lijn missen door minder dan de tolerantie, worden nog steeds als binnen beschouwd. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::Tessellate
Hiermee maakt u een reeks driehoeken met de klok mee die de geometrie bedekken nadat deze is getransformeerd met behulp van de opgegeven matrix en afgevlakt met behulp van de opgegeven tolerantie.
BOOL Tessellate(
const D2D1_MATRIX_3X2_F& worldTransform,
ID2D1TessellationSink* tessellationSink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
worldTransform
De transformatie die moet worden toegepast op deze geometrie of NULL.
tessellationSink
De ID2D1TessellationSink waaraan de tessellated wordt toegevoegd.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrie. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.
CD2DGeometry::Widen
Verbreedt de geometrie door de opgegeven lijn en schrijft het resultaat naar een ID2D1SimplifiedGeometrySink nadat deze is getransformeerd door de opgegeven matrix en afgevlakt met behulp van de opgegeven tolerantie.
BOOL Widen(
FLOAT strokeWidth,
ID2D1StrokeStyle* strokeStyle,
const D2D1_MATRIX_3X2_F& worldTransform,
ID2D1SimplifiedGeometrySink* geometrySink,
FLOAT flatteningTolerance = D2D1_DEFAULT_FLATTENING_TOLERANCE) const;
Parameterwaarden
strokeWidth
De hoeveelheid waarmee de geometrie moet worden uitgebreid.
strokeStyle
De stijl van pennenstreken die moet worden toegepast op de geometrie of NULL.
worldTransform
De transformatie die moet worden toegepast op de geometrie na het breder maken ervan.
geometrieSink
De ID2D1SimplifiedGeometrySink waaraan de uitgebreide geometrie wordt toegevoegd.
flatteningTolerance
De maximumgrenzen op de afstand tussen punten in de veelhoekige benadering van de geometrie. Kleinere waarden produceren nauwkeurigere resultaten, maar leiden tot tragere uitvoering.
Retourwaarde
Als de methode slaagt, wordt TRUE geretourneerd. Anders wordt FALSE geretourneerd.