Фігури у Ruby2d
Квадрат (клас Square) створюють таким чином:
s=Square.new(x:a, y:b, z:с, size:d, color:"колір")
Тут:
a, b — координати (у пікселях) верхнього лівого кута зображення, значення 0 як усталено;
с — z-індекс (координата по вертикалі, номер шару) — об'єкти з більшим значенням z розташовані поверх об'єктів з меншим значенням z, значення 0 як усталено;
d — довжина сторони (у пікселях), значення 100 як усталено;
колір — як усталено білий ("white"), переданий екзеспляру класу Color, тому можна при заданні використати функції Color.
Можна отримувати або змінювати значення властивостей x, y, size, color:
s = Square.new s.x #=> 0 s.y #=> 0 s.size #=> 100 s.color # => Color.new('white') s.x = 100 s.y = 100 s.size =200 s.color = 'red'
s.color повертає екземпляр класу Color або, якщо при створені квадрату використано декілька кольорів, екземпляр класу Color::Set, що містить масив цих кольорів та функції від них. Наприклад, таке зображення квадрату:
можна отримати такою програмою:
require 'ruby2d' s = Square.new(size:475, color:['green', 'blue', 'red', 'yellow']) show
Прямокутник (клас Rectangle, батьківський клас щодо Square) описують майже так само, як квадрат (Square), але з однією істотною відмінністю: замість однієї властивості size (розмір) використовують width і height (розміри по горизонталі й вертикалі) — див. приклад.
r = Rectangle.new(x: 0, y: 0, width: 200, height: 100, z: 0, color: 'white')
Тут і далі у прикладах опису створюваних об'єктів значення усіх властивостей подано як усталено. Тобто вказано ті значення, які буде надано властивостям, якщо їм не надано значень (не згадано) у коді програми. Будь-яку з вказаних властивостей можна отримати традиційним способом:
назва_об'єкта.назва_властивості
і змінити її значення
назва_об'єкта.назва_властивості = нове_значення
саме так, як для квадрата — приклади для класу Square подано вище.
Чотирикутник (клас Quad, батьківський клас щодо Rectangle) описують, використовуючи опис координат вершин у фігурних дужках — див. приклад.
q = Quad.new(x1:0, y1:0, x2:100, y2:0, x3:100, y3:100, x4:0, y4:100, z:0, color:'white')
Трикутник (клас Triangle) описують, використовуючи опис координат вершин у фігурних дужках — див. приклад:
t = Triangle.new(x1:50, y1:0, x2:100, y2:100, x3:0, y3:100, z:0, color:'white')
Зображення трикутника з таким зафарбуванням
можна отримати таким кодом:
t = Triangle.new(color: ['red', 'green', 'blue'])
Відрізок прямої (клас Line) описують, використовуючи опис координат кінців відрізка у фігурних дужках — див. приклад.
l = Line.new(x1:0, y1:0, x2:100, y2:100, width:2, z:0, color:'white')
Тут використано властивсть width — товщина лінії (у пікселях).