Ellipse
Belirli bir genişlik ve yükseklik dahilinde bir elips veya eliptik yay çizer. Başlangıç açısı, süpürme açısı, dolgu ve kontur ile eliptik ölçekler veya dekoratif ana hatlar oluşturulabilir.
Örnek
function main() {
return (
<Ellipse
width={180}
height={100}
background="clear"
stroke={$env.accent}
lineWidth={6}
startAngle={0}
sweepAngle={270}
strokePosition="center"
/>
);
}
Kullanım
- Ellipse ve Arc tüm genişlik/yüksekliği kullanır; eşitse dairedir. Kısmi yaylar merkeze bağlanmaz. background yalnız kapalı tam turda dolar.
- Açı derece: 0 sağ, 90 aşağı, pozitif sweep saat yönü. startAngle mod 360, sweepAngle −360…360 sınırlı. 0 çizmez, ±360 tam turdur. wrap:360 yalnız startAngle için.
- background/stroke Color veya Gradient alır. Üç Gradient kurucusunu kullanın; durak ve merkezler 0–1, yarıçaplar nokta. HDR tek rengi sarar; parlaklık cihaz ve ortama bağlıdır.
Özellikler
startAngle?numberDerece cinsinden başlangıç açısı; örnekleme sırasında 360 modunda normalleştirilir.
0sweepAngle?numberDerece cinsinden tarama açısı; örnekleme sırasında -360…360 ile sınırlanır. Pozitif değer saat yönündedir; wrap desteklenmez.
360background?PaintTam kapalı daire veya elips dolgusu. Kısmi yaylarda yok sayılır.
HDR($env.dark ? "white" : "black")stroke?PaintÇizgi rengi veya gradyanı; clear gizler.
"clear"lineWidth?numberÇizgi kalınlığı, punto; 0 çizmez.
2strokePosition?"inside" | "center" | "outside"Tam daire veya elips konturuna göre çizgi konumu. Varsayılan inside.
"inside"lineCap?"round" | "butt" | "square"Çizgi ucu: butt keser, square kare uzatır, round yuvarlar.
"round"dash?number[]Çizgi ve boşluk uzunlukları sırayla, punto; boş dizi düz çizgidir.
[]dashPhase?numberKesik çizgi desen kayması, punto.
0Ortak özellikler
width?number | "auto" | "fill"Punto cinsinden genişlik, otomatik boyut veya üst alanı doldurma.
"fill"height?number | "auto" | "fill"Punto cinsinden yükseklik, otomatik boyut veya üst alanı doldurma.
"fill"x?numberGörsel kaydırma, punto: x sağa, y aşağı. Yerleşimde ayrılan alan değişmez.
0y?numberGörsel kaydırma, punto: x sağa, y aşağı. Yerleşimde ayrılan alan değişmez.
0transform?ViewTransformYerleşimi değiştirmeyen bütünsel dönüşüm. Kaydırma punto, dönüş/eğim derece, ölçek 1 değişmez, dayanak 0–1.
{rotation: 0}opacity?numberTüm View opaklığı: 0 saydam, 1 opak.
1clipped?booleanView sınırlarını aşan çizimi kırpar.
falseclip?"rectangle" | "ellipse"Kırpma şekli rectangle veya ellipse; Material için false kapatır.
"rectangle"mask?View | nullAlfa maskesi View öğesi. Düzeni etkilemeden ortalanır; null maskeyi devre dışı bırakır.
<Circle width="fill" height="fill" background="white"/>zIndex?numberKardeşler arasında çizim sırası; büyük değer öndedir.
0blur?numberBulanıklık yarıçapı, punto; 0 kapatır.
4innerShadow?DrawingEffectEfekt rengi, opaklığı, bulanıklık yarıçapı ve x/y kayması; uzaklıklar punto.
{color: HDR("black"), opacity: 0.5, radius: 4, x: 0, y: 2}glow?DrawingEffectEfekt rengi, opaklığı, bulanıklık yarıçapı ve x/y kayması; uzaklıklar punto.
{color: HDR("cyan"), radius: 8, opacity: 0.8}shadowColor?ColorDış gölge rengi.
HDR("black")shadowOpacity?numberGölge opaklığı 0–1; 0 gizler.
0shadowRadius?numberDış gölge bulanıklık yarıçapı, punto.
4shadowX?numberGölge kayması, punto: x sağa, y aşağı.
0shadowY?numberGölge kayması, punto: x sağa, y aşağı.
2animations?EllipseAnimation[]Özellik değişimini canlandırır. duration/delay saniye; from/to uçlar; repeat/autoreverse tekrar, wrap dönem.
[{property: "opacity", duration: 0.25, curve: "easeInOut"}]key?string | numberKardeş öğeler arasında kararlı kimlik.
Pratik örnek
function main() {
return (
<VStack spacing={12}>
<Ellipse width={180} height={80} background={$env.accent} />
<Ellipse
width={180}
height={80}
background="clear"
stroke={$env.accent}
lineWidth={6}
startAngle={180}
sweepAngle={180}
/>
</VStack>
);
}
Animasyon
widthheightxyopacitybackgroundblurshadowColorshadowOpacityshadowRadiusshadowXshadowYdashPhasestrokelineWidthstartAnglesweepAngletransform.translateXtransform.translateYtransform.scaleXtransform.scaleYtransform.rotationtransform.skewXtransform.skewYtransform.anchorXtransform.anchorYAtlandığında
Tablo uygulamada doğrulanmış atlama davranışıdır; örnekler varsayılan değildir. Sabit sonuç için açık değer kullanın; bağlama bağlı boyut ve tema renkleri sabit sayı değildir.
| Özellikler | Atlandığında |
|---|---|
startAngle | 0 |
sweepAngle | 360 |
lineWidth | 2 |
strokePosition | "inside" |
background | HDR($env.dark ? 'white' : 'black') |