QGradient Class
QGradient クラスは、QBrush と組み合わせて、グラデーション塗りつぶしを指定するために使用します。詳細...
Header: | #include <QGradient> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
Inherited By: |
- 継承メンバを含む全メンバ一覧
- QGradient は、Painting ClassesおよびImplicitly Shared Classes に含まれます。
パブリック型
enum | CoordinateMode { LogicalMode, ObjectMode, StretchToDeviceMode, ObjectBoundingMode } |
enum | Preset { WarmFlame, NightFade, SpringWarmth, JuicyPeach, YoungPassion, …, PerfectBlue } |
enum | Spread { PadSpread, RepeatSpread, ReflectSpread } |
enum | Type { LinearGradient, RadialGradient, ConicalGradient, NoGradient } |
パブリック関数
QGradient(QGradient::Preset preset) | |
QGradient::CoordinateMode | coordinateMode() const |
void | setColorAt(qreal position, const QColor &color) |
void | setCoordinateMode(QGradient::CoordinateMode mode) |
void | setSpread(QGradient::Spread method) |
void | setStops(const QGradientStops &stopPoints) |
QGradient::Spread | spread() const |
QGradientStops | stops() const |
QGradient::Type | type() const |
bool | operator!=(const QGradient &gradient) const |
bool | operator==(const QGradient &gradient) const |
関連する非メンバー
詳しい説明
Qt は現在、3 種類のグラデーション塗りをサポートしています:
- 線形グラデーションは、始点と終点の間で色を補間します。
- 単純な放射状グラデーションは、焦点とそれを囲む円上の端点の間の色を補間します。
- 拡張放射状グラデーションは、中心と焦点となる円の間の色を補間します。
- 円錐グラデーションは、中心点を中心に色を補間します。
グラデーションのタイプはtype() 関数で取得できます。各タイプはQGradientのサブクラスで表されます:
グラデーションの色は、QGradientStop タイプの停止点、つまり位置と色を使って定義されます。1つのストップ・ポイントを定義するには、setColorAt() 関数を使用します。また、setStops() 関数を使用して、一度に複数のストップ・ポイントを定義することもできます。後者の関数は、現在の停止点のセットを置き換えることに注意してください。
グラデーション領域がどのように塗りつぶされるべきかを記述するのは、グラデーションの完全な停止点セット(stops ()関数を通してアクセス可能)です。停止点が指定されていない場合、0 の黒から 1 の白へのグラデーションが使用されます。
(100, 100)の黒から(200, 200)の白への斜めの直線グラデーションはこのように指定できます:
QLinearGradient linearGrad(QPointF(100, 100), QPointF(200, 200)); linearGrad.setColorAt(0, Qt::black); linearGrad.setColorAt(1, Qt::white);
グラデーションは任意の数の停止点を持つことができます。グラデーションは、任意の数の停止点を持つことができます。次のようにすると、中央の赤から始まり、青、そして端の緑へと放射状のグラデーションが作成されます:
QRadialGradient radialGrad(QPointF(100, 100), 100); radialGrad.setColorAt(0, Qt::red); radialGrad.setColorAt(0.5, Qt::blue); radialGrad.setColorAt(1, Qt::green);
setSpread() 関数を使用してspread method を指定することで、グラデーションをその領域の外側で繰り返したり反映させたりすることができます。デフォルトでは、最も近い停止点の色で外側を塗りつぶします。現在設定されているspread method は、spread() 関数を使用して取得できます。QGradient::Spread enumは3つの異なるメソッドを定義しています:
setSpread()関数は、線形グラデーションと放射状グラデーションに対してのみ有効であることに注意。その理由は、円錐勾配は定義上閉じているからである。つまり、円錐勾配は0度から360度までの円全体を埋めるが、放射状勾配や直線勾配の境界は、それぞれ半径や最終停止点を通して指定することができる。
グラデーション座標は、論理座標、デバイス座標に対する相対座標、またはオブジェクトのバウンディングボックス座標に対する相対座標で指定できます。coordinate mode はsetCoordinateMode() 関数で設定できます。デフォルトはLogicalMode で、グラデーション座標はオブジェクト座標と同じ方法で指定されます。現在設定されているcoordinate mode を取得するにはcoordinateMode() を使用します。
The Gradients ExampleおよびQBrushも参照してください 。
メンバ型ドキュメント
enum QGradient::CoordinateMode
この列挙型は、グラデーション座標が、グラデーションが使用されるペイントデバイスにどのようにマッピングされるかを指定します。
定数 | 値 | 説明 |
---|---|---|
QGradient::LogicalMode | 0 | これはデフォルトモードである。グラデーション座標は、オブジェクト座標と同様に論理空間で指定されます。 |
QGradient::ObjectMode | 3 | このモードでは、グラデーション座標は描画されるオブジェクトの外接矩形からの相対座標となり、オブジェクトの外接矩形の左上隅を(0,0)、右下隅を(1,1)とします。この値は Qt 5.12 で追加されました。 |
QGradient::StretchToDeviceMode | 1 | このモードでは、グラデーション座標はペイント・デバイスの外接矩形からの相対座標となり、(0,0)はペイント・デバイスの左上隅、(1,1)は右下隅となります。 |
QGradient::ObjectBoundingMode | 2 | このモードは ObjectMode と同じですが、{QBrush::transform()} {ブラシ変換} がある場合は、オブジェクト空間ではなく論理空間に対して相対的に適用されます。この列挙値は非推奨であり、新しいコードでは使用しないでください。 |
enum QGradient::Preset
この enum は、https://webgradients.com/ からのグラデーションに基づいて、QGradient のための事前定義されたプリセットのセットを指定します。
定数 | 値 |
---|---|
QGradient::WarmFlame | 1 |
QGradient::NightFade | 2 |
QGradient::SpringWarmth | 3 |
QGradient::JuicyPeach | 4 |
QGradient::YoungPassion | 5 |
QGradient::LadyLips | 6 |
QGradient::SunnyMorning | 7 |
QGradient::RainyAshville | 8 |
QGradient::FrozenDreams | 9 |
QGradient::WinterNeva | 10 |
QGradient::DustyGrass | 11 |
QGradient::TemptingAzure | 12 |
QGradient::HeavyRain | 13 |
QGradient::AmyCrisp | 14 |
QGradient::MeanFruit | 15 |
QGradient::DeepBlue | 16 |
QGradient::RipeMalinka | 17 |
QGradient::CloudyKnoxville | 18 |
QGradient::MalibuBeach | 19 |
QGradient::NewLife | 20 |
QGradient::TrueSunset | 21 |
QGradient::MorpheusDen | 22 |
QGradient::RareWind | 23 |
QGradient::NearMoon | 24 |
QGradient::WildApple | 25 |
QGradient::SaintPetersburg | 26 |
QGradient::PlumPlate | 28 |
QGradient::EverlastingSky | 29 |
QGradient::HappyFisher | 30 |
QGradient::Blessing | 31 |
QGradient::SharpeyeEagle | 32 |
QGradient::LadogaBottom | 33 |
QGradient::LemonGate | 34 |
QGradient::ItmeoBranding | 35 |
QGradient::ZeusMiracle | 36 |
QGradient::OldHat | 37 |
QGradient::StarWine | 38 |
QGradient::HappyAcid | 41 |
QGradient::AwesomePine | 42 |
QGradient::NewYork | 43 |
QGradient::ShyRainbow | 44 |
QGradient::MixedHopes | 46 |
QGradient::FlyHigh | 47 |
QGradient::StrongBliss | 48 |
QGradient::FreshMilk | 49 |
QGradient::SnowAgain | 50 |
QGradient::FebruaryInk | 51 |
QGradient::KindSteel | 52 |
QGradient::SoftGrass | 53 |
QGradient::GrownEarly | 54 |
QGradient::SharpBlues | 55 |
QGradient::ShadyWater | 56 |
QGradient::DirtyBeauty | 57 |
QGradient::GreatWhale | 58 |
QGradient::TeenNotebook | 59 |
QGradient::PoliteRumors | 60 |
QGradient::SweetPeriod | 61 |
QGradient::WideMatrix | 62 |
QGradient::SoftCherish | 63 |
QGradient::RedSalvation | 64 |
QGradient::BurningSpring | 65 |
QGradient::NightParty | 66 |
QGradient::SkyGlider | 67 |
QGradient::HeavenPeach | 68 |
QGradient::PurpleDivision | 69 |
QGradient::AquaSplash | 70 |
QGradient::SpikyNaga | 72 |
QGradient::LoveKiss | 73 |
QGradient::CleanMirror | 75 |
QGradient::PremiumDark | 76 |
QGradient::ColdEvening | 77 |
QGradient::CochitiLake | 78 |
QGradient::SummerGames | 79 |
QGradient::PassionateBed | 80 |
QGradient::MountainRock | 81 |
QGradient::DesertHump | 82 |
QGradient::JungleDay | 83 |
QGradient::PhoenixStart | 84 |
QGradient::OctoberSilence | 85 |
QGradient::FarawayRiver | 86 |
QGradient::AlchemistLab | 87 |
QGradient::OverSun | 88 |
QGradient::PremiumWhite | 89 |
QGradient::MarsParty | 90 |
QGradient::EternalConstance | 91 |
QGradient::JapanBlush | 92 |
QGradient::SmilingRain | 93 |
QGradient::CloudyApple | 94 |
QGradient::BigMango | 95 |
QGradient::HealthyWater | 96 |
QGradient::AmourAmour | 97 |
QGradient::RiskyConcrete | 98 |
QGradient::StrongStick | 99 |
QGradient::ViciousStance | 100 |
QGradient::PaloAlto | 101 |
QGradient::HappyMemories | 102 |
QGradient::MidnightBloom | 103 |
QGradient::Crystalline | 104 |
QGradient::PartyBliss | 106 |
QGradient::ConfidentCloud | 107 |
QGradient::LeCocktail | 108 |
QGradient::RiverCity | 109 |
QGradient::FrozenBerry | 110 |
QGradient::ChildCare | 112 |
QGradient::FlyingLemon | 113 |
QGradient::NewRetrowave | 114 |
QGradient::HiddenJaguar | 115 |
QGradient::AboveTheSky | 116 |
QGradient::Nega | 117 |
QGradient::DenseWater | 118 |
QGradient::Seashore | 120 |
QGradient::MarbleWall | 121 |
QGradient::CheerfulCaramel | 122 |
QGradient::NightSky | 123 |
QGradient::MagicLake | 124 |
QGradient::YoungGrass | 125 |
QGradient::ColorfulPeach | 126 |
QGradient::GentleCare | 127 |
QGradient::PlumBath | 128 |
QGradient::HappyUnicorn | 129 |
QGradient::AfricanField | 131 |
QGradient::SolidStone | 132 |
QGradient::OrangeJuice | 133 |
QGradient::GlassWater | 134 |
QGradient::NorthMiracle | 136 |
QGradient::FruitBlend | 137 |
QGradient::MillenniumPine | 138 |
QGradient::HighFlight | 139 |
QGradient::MoleHall | 140 |
QGradient::SpaceShift | 142 |
QGradient::ForestInei | 143 |
QGradient::RoyalGarden | 144 |
QGradient::RichMetal | 145 |
QGradient::JuicyCake | 146 |
QGradient::SmartIndigo | 147 |
QGradient::SandStrike | 148 |
QGradient::NorseBeauty | 149 |
QGradient::AquaGuidance | 150 |
QGradient::SunVeggie | 151 |
QGradient::SeaLord | 152 |
QGradient::BlackSea | 153 |
QGradient::GrassShampoo | 154 |
QGradient::LandingAircraft | 155 |
QGradient::WitchDance | 156 |
QGradient::SleeplessNight | 157 |
QGradient::AngelCare | 158 |
QGradient::CrystalRiver | 159 |
QGradient::SoftLipstick | 160 |
QGradient::SaltMountain | 161 |
QGradient::PerfectWhite | 162 |
QGradient::FreshOasis | 163 |
QGradient::StrictNovember | 164 |
QGradient::MorningSalad | 165 |
QGradient::DeepRelief | 166 |
QGradient::SeaStrike | 167 |
QGradient::NightCall | 168 |
QGradient::SupremeSky | 169 |
QGradient::LightBlue | 170 |
QGradient::MindCrawl | 171 |
QGradient::LilyMeadow | 172 |
QGradient::SugarLollipop | 173 |
QGradient::SweetDessert | 174 |
QGradient::MagicRay | 175 |
QGradient::TeenParty | 176 |
QGradient::FrozenHeat | 177 |
QGradient::GagarinView | 178 |
QGradient::FabledSunset | 179 |
QGradient::PerfectBlue | 180 |
enum QGradient::Spread
グラデーション領域の外側の領域をどのように塗りつぶすかを指定します。
定数 | 値 | 説明 |
---|---|---|
QGradient::PadSpread | 0 | 領域は最も近いストップカラーで塗りつぶされる。これはデフォルトです。 |
QGradient::RepeatSpread | 2 | グラデーションはグラデーション領域の外側で繰り返されます。 |
QGradient::ReflectSpread | 1 | グラデーションはグラデーション領域の外側に反映されます。 |
enum QGradient::Type
グラデーションの種類を指定します。
定数 | 値 | 説明 |
---|---|---|
QGradient::LinearGradient | 0 | 始点と終点間の色を補間します (QLinearGradient)。 |
QGradient::RadialGradient | 1 | 中心点とそれを囲む円上の端点間の色を補間します (QRadialGradient)。 |
QGradient::ConicalGradient | 2 | 中心点を中心に色を補間します (QConicalGradient)。 |
QGradient::NoGradient | 3 | グラデーションは使わない。 |
type()も参照 。
メンバ関数ドキュメント
QGradient::QGradient(QGradient::Preset preset)
事前に定義されたpreset に基づいてグラデーションを構築します。
生成されるグラデーションの座標モードはQGradient::ObjectMode で、 プリセットを任意のオブジェクトサイズに適用することができます。
QGradient::CoordinateMode QGradient::coordinateMode() const
このグラデーションの座標モードを返します。デフォルトモードはLogicalMode です。
setCoordinateMode()も参照して ください。
void QGradient::setColorAt(qreal position, const QColor &color)
与えられたcolor で、与えられたposition に停止点を作成します。与えられたposition は 0 から 1 の範囲でなければなりません。
void QGradient::setCoordinateMode(QGradient::CoordinateMode mode)
このグラデーションの座標モードをmode に設定します。 デフォルトモードはLogicalMode です。
coordinateMode()も参照 。
void QGradient::setSpread(QGradient::Spread method)
このグラデーションに用いるスプレッドmethod を指定します。
この関数は,線形グラデーションと放射状グラデーションに対してのみ有効であることに注意してください.
spread() も参照 。
void QGradient::setStops(const QGradientStops &stopPoints)
現在の停止点セットを,与えられたstopPoints で置き換えます.点の位置は 0 から 1 の範囲でなければならず,最も低い点から順にソートされなければなりません.
setColorAt() およびstops()も参照 。
QGradient::Spread QGradient::spread() const
このグラデーションが使用するスプレッドメソッドを返します。デフォルトはPadSpread 。
setSpread()も参照 。
QGradientStops QGradient::stops() const
このグラデーションの停止点を返します。
停止点が指定されていない場合は、0 を黒、1 を白とするグラデーションが使用されます。
setStops() およびsetColorAt() も参照 。
QGradient::Type QGradient::type() const
グラデーションの種類を返します。
bool QGradient::operator!=(const QGradient &gradient) const
グラデーションが指定された他のgradient と同じ場合はtrue
を返し、そうでない場合はfalse
を返す。
operator==()も参照 。
bool QGradient::operator==(const QGradient &gradient) const
勾配が指定された他のgradient と同じ場合はtrue
を返し、そうでない場合はfalse
を返す。
operator!=()も参照 。
©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 ここで提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。