XNA'nın daire çizimini destekleyen herhangi bir yöntemi yoktur.
Normalde, her zaman aynı renkte bir daire çizmek zorunda kaldığımda, o daireyle görüntü oluşturdum ve sonra bunu bir hareketli görüntü olarak gösterebiliyorum.
Fakat şimdi çemberin rengi çalışma zamanı sırasında belirtildi, bununla nasıl başa çıkılacağı hakkında herhangi bir fikir var mı?XNA'da belirli bir renkle daire nasıl çizilir?
10
A
cevap
37
Transparent
arkaplan ve dairenin renkli bölümünü White
olarak bir dairenin görüntüsünü oluşturabilirsiniz.
public Texture2D CreateCircle(int radius)
{
int outerRadius = radius*2 + 2; // So circle doesn't go out of bounds
Texture2D texture = new Texture2D(GraphicsDevice, outerRadius, outerRadius);
Color[] data = new Color[outerRadius * outerRadius];
// Colour the entire texture transparent first.
for (int i = 0; i < data.Length; i++)
data[i] = Color.TransparentWhite;
// Work out the minimum step necessary using trigonometry + sine approximation.
double angleStep = 1f/radius;
for (double angle = 0; angle < Math.PI*2; angle += angleStep)
{
// Use the parametric definition of a circle: http://en.wikipedia.org/wiki/Circle#Cartesian_coordinates
int x = (int)Math.Round(radius + radius * Math.Cos(angle));
int y = (int)Math.Round(radius + radius * Math.Sin(angle));
data[y * outerRadius + x + 1] = Color.White;
}
texture.SetData(data);
return texture;
}
:
Texture2D circle = CreateCircle(100);
// Change Color.Red to the colour you want
spriteBatch.Draw(circle, new Vector2(30, 30), Color.Red);
Sadece eğlence için, burada CreateCircle yöntemi şudur: Draw()
yöntemde çevrelerin hazırlanması gerektiğinde bunu olmak istediğini Ardından gibi renk tonunu seçmek
İlgili konular
- 1. Bir html5 tuvalinde daire sektörü nasıl çizilir?
- 2. iphone'da eş merkezli bir daire nasıl çizilir?
- 3. Farklı renklerle dolu bir daire çizimi, farklı bir renkle doldurun
- 4. UILabel'de bir daire nasıl çizilir? Böyle bir şeyi yapmak istiyorum
- 5. Belirli bir ListPlot'un tüm noktalarını Mathematica'da belirli bir renkle ayarlama
- 6. SimpleShapeChecker kullanılarak bir daire tespit edildikten sonra nasıl daire çizilir? (Accord.net Taşınabilir)
- 7. Matlab: tekdüze olmayan ve örtüşmeyen daire / dikdörtgen, belirli bir yarıçapı olan daire içine nasıl oluşturulur
- 8. Bir TextView nasıl çizilir?
- 9. Çemberin orta noktası olarak verilen X ve Y koordinatlarına sahip bir daire nasıl çizilir?
- 10. Aşağıdaki gibi eşmerkezli daire üzerinde bir efekt (metalik parlaklık ile parlaklık) nasıl çizilir?
- 11. GMSMapView'da bir daire nasıl görüntülenir
- 12. Bir Basemap'ta dikdörtgenler nasıl çizilir
- 13. Görüntü bir pencerede nasıl çizilir?
- 14. Bir ascii git ağacı nasıl çizilir (düzenlenir)
- 15. Bir ncurses penceresini bir renkle doldurun
- 16. kivy: özel bir şekli renkle doldurun
- 17. Zamanla bir daire doldurun
- 18. MATLAB: Bir görüntüden bir daire nasıl ekleyebilirim
- 19. Izgarada daire nasıl yapılır?
- 20. Javascript bir renkle tüm dışlanmış karakterleri vurgula
- 21. plot çizelgesi nasıl çizilir
- 22. ZendendTitBlock nasıl çizilir PDF
- 23. Eşmerkezli altıgenler nasıl çizilir?
- 24. Şekil nasıl çizilir
- 25. Resimde metin nasıl çizilir?
- 26. Swt resmi nasıl çizilir?
- 27. JMS kuyruğu nasıl çizilir?
- 28. Başka bir şekil içinde daha küçük bir ShapeDrawable nasıl çizilir Programlanabilir bir programa göre
- 29. python KeyError mesajını renkle artır
- 30. İki renkle arsada tek bir 'pch' noktası nasıl doldurulur?
XNA forumlarında böyle bir şey okumayı hatırlıyorum. – Mike