Difference between revisions of "Render Part A Assignment"
Jump to navigation
Jump to search
Line 5: | Line 5: | ||
=Code to Implement= | =Code to Implement= | ||
==Components== | ==Components== | ||
+ | Each of the renderable components has its own file in the ruby/render/assignment directory. | ||
+ | |||
===Equilateral Triangle=== | ===Equilateral Triangle=== | ||
[[File:Render_equilateral_triangle.png]] | [[File:Render_equilateral_triangle.png]] | ||
Line 23: | Line 25: | ||
[[File:Render_text.png]] | [[File:Render_text.png]] | ||
− | ===Point2=== | + | ===Bézier Curve=== |
+ | ====Point2==== | ||
+ | To support Bézier curves you will want to implement the point2.rb. You may wish to use Ruby's convenient [https://ruby-doc.org/core-2.4.2/Struct.html Struct] construct. | ||
− | + | You should be able to construct a Point2 with an x and a y and be able to access those values. | |
+ | ====Component==== | ||
+ | Quadratic (Second Order) Curve: | ||
[[File:Bézier_2_big.svg]] [[File:Bézier_2_big.gif]] | [[File:Bézier_2_big.svg]] [[File:Bézier_2_big.gif]] | ||
+ | |||
+ | Cubic (Third Order) Curve: | ||
+ | [[File:Bézier_3_big.svg]] [[File:Bézier_3_big.gif]] | ||
+ | |||
+ | Fourth Order Curve: | ||
+ | [[File:Bézier_4_big.svg]] [[File:Bézier_4_big.gif]] | ||
[[File:Render_bezier_curve.png]] | [[File:Render_bezier_curve.png]] |
Revision as of 14:46, 10 July 2019
Contents
Code to Investigate
ruby/examples/cavalcade_of_graphics.rb
Code to Implement
Components
Each of the renderable components has its own file in the ruby/render/assignment directory.
Equilateral Triangle
Rectangle
Ellipse
Chord
Image
Text
Bézier Curve
Point2
To support Bézier curves you will want to implement the point2.rb. You may wish to use Ruby's convenient Struct construct.
You should be able to construct a Point2 with an x and a y and be able to access those values.
Component
Quadratic (Second Order) Curve: