Created
August 12, 2012 04:12
-
-
Save Breefield/3329668 to your computer and use it in GitHub Desktop.
Drawing a Hexagon with Paper.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Create a Paper.js Path to draw a line into it: | |
var hexagon = new Path(); | |
// Color our path black | |
hexagon.strokeColor = 'black'; | |
// How many points do we want our object to have | |
var points = 6; | |
// How large should it be | |
var radius = 60; | |
// 0 to 2PI is a circle, so divide that by the number of points | |
// in our object and that's how many radians we should put a new | |
// point in order to draw the shape | |
var angle = ((2 * Math.PI) / points); | |
// For as many vertices in the shape, add a point | |
for(i = 0; i <= points; i++) { | |
// Add a new point to the object | |
hexagon.add(new Point( | |
// Radius * Math.cos(number of radians of the point) is the x position | |
radius * Math.cos(angle * i), | |
// And the same thing with Math.sin for the y position of the point | |
radius * Math.sin(angle * i) | |
)); | |
} | |
// Offset the shape so it's fully displayed on the canvas | |
hexagon.position.x += 200; | |
hexagon.position.y += 200; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hi,
I am drawing 6 hexagons(HoneyComb structure) In typescript onInit using the below mentioned method,
drawHexagon(positionX,positionY){
console.log('draw Hexagon');
var tool1 = new Tool();
this.hexagon = new Path();
for(let i = 0; i <= this.noOfDimension; i++) {
}
this.hexagon.position.x += positionX; //300;
this.hexagon.position.y += positionY; //300;
}
=> In mouse click i wants to fill any color in hexagons. the color should fill in all hexagons.
=> I used the below code to fill color. But it is not working as expected. It fills color in only one Hexagon, even this also sometimes not working on mouse click.
this.hexagon.onClick = function(event){
this.fillColor = "pink";
}
Please Help to resolve the issue.