|
SDLPainter 1.2.0
SDL3 + OpenGL/Vulkan 2D çizim kütüphanesi
|
Çizgi stili — renk, kalınlık ve isteğe bağlı dış kontur. Ayrıntılar...
#include <pen.h>
Public Üye Fonksiyonlar | |
| Pen ()=default | |
| Varsayılan kalem: siyah, 1 piksel kalınlık. | |
| Pen (const Color &color, float width=1.0F) | |
| Renk ve kalınlıkla kalem oluştur. | |
| Pen (const Color &color, float width, const Color &outline_color, float outline_width) | |
| Dış konturlu (outline) kalem oluştur. | |
| const Color & | GetColor () const noexcept |
| Çizgi rengini döndür. | |
| float | GetWidth () const noexcept |
| Çizgi kalınlığını döndür. | |
| const Color & | GetOutlineColor () const noexcept |
| Dış kontur rengini döndür. | |
| float | GetOutlineWidth () const noexcept |
| Dış kontur kalınlığını döndür. | |
| void | SetColor (const Color &color) noexcept |
| Çizgi rengini ayarla. | |
| void | SetWidth (float width) noexcept |
| Çizgi kalınlığını ayarla. | |
| void | SetOutlineColor (const Color &color) noexcept |
| Dış kontur rengini ayarla. | |
| void | SetOutlineWidth (float width) noexcept |
| Dış kontur kalınlığını ayarla. | |
| void | SetCapStyle (LineCap cap) noexcept |
| Uç stilini ayarla (yalnızca açık çizgiler için). | |
| void | SetJoinStyle (LineJoin join) noexcept |
| Birleşim stilini ayarla. | |
| void | SetDashPattern (std::initializer_list< float > lengths) noexcept |
| Kesikli çizgi desenini ayarla. | |
| void | ClearDashPattern () noexcept |
| Kesiği kapat — çizgi kesintisiz olur. | |
| std::size_t | GetDashCount () const noexcept |
| Desendeki geçerli uzunluk sayısı (0 ise kesik yok). | |
| const std::array< float, kMaxDashSegments > & | GetDashPattern () const noexcept |
| Desen uzunlukları. Yalnızca ilk GetDashCount tanesi anlamlı. | |
| bool | HasDash () const noexcept |
| Kalem kesikli mi? | |
| bool | IsVisible () const noexcept |
| Kalem görünür mü? (alpha > 0 ve width > 0). | |
| bool | HasOutline () const noexcept |
| Kalemin görünür bir dış konturu var mı? | |
Statik Public Üye Fonksiyonlar | |
| static Pen | NoPen () noexcept |
| Şeffaf (çizim yapmayan) kalem. | |
Çizgi stili — renk, kalınlık ve isteğe bağlı dış kontur.
|
inlineexplicit |
Renk ve kalınlıkla kalem oluştur.
| color | Çizgi rengi. |
| width | Çizgi kalınlığı (piksel, >= 0.0). |
|
inline |
Dış konturlu (outline) kalem oluştur.
Çizim sırasında önce outline_color ile daha kalın bir geometri, ardından üzerine color/width ile normal geometri çizilir. Bu sayede çizgi, resim veya karmaşık arka planlar üzerinde daha belirgin olur.
| color | Çizgi rengi. |
| width | Çizgi kalınlığı (piksel, >= 0.0). |
| outline_color | Dış kontur rengi. |
| outline_width | Dış kontur kalınlığı (piksel, her iki tarafa eklenir; >= 0.0). |
|
inlinenoexcept |
Kesikli çizgi desenini ayarla.
Uzunluklar piksel cinsinden, sırayla çizili / boş olarak okunur: {10, 5} → 10 piksel çiz, 5 piksel atla, tekrarla.
Desen yol boyunca sürekli ilerler: bir köşede yarım kalan çizgi parçası, sonraki segmentte kaldığı yerden devam eder.
Tek sayıda uzunluk verilirse desen SVG'deki gibi iki tur boyunca kendini tersine çevirerek tamamlar ({5} → 5 çiz, 5 atla).
| lengths | Uzunluklar; en fazla kMaxDashSegments tanesi alınır, fazlası yok sayılır. Pozitif olmayan değerler eklenmez. Boş liste veya toplamı sıfır olan desen, kesiği kapatır. |