Solved

HTML - How to draw a 'target'  / concentric circles on a canvas

Posted on 2014-07-20
2
634 Views
Last Modified: 2014-07-20
How can use  JS  to draw a 'target'  (Like the Target icon ) or concentric circles when a  canvas is click on a an specific point?

 var ctx = canvas.getContext('2d');
????
0
Comment
Question by:JElster
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 35

Accepted Solution

by:
Robert Schutt earned 500 total points
ID: 40207638
maybe something like this? http://jsfiddle.net/robert_schutt/8usRk/
var canvas = document.getElementById("canvas");
var ctx = canvas.getContext('2d');

var C_RADIUS = 20, C_NUM = 3, C_WIDTH = 10;

$('#canvas').click(function(e){
    var offset = $(this).offset();
    ctx.clearRect(0, 0, canvas.width, canvas.height);
    var x = e.pageX - offset.left - C_WIDTH / 2;
    var y = e.pageY - offset.top - C_WIDTH / 2;
    ctx.lineWidth = C_WIDTH;
    ctx.strokeStyle = 'black';
    ctx.beginPath();
    ctx.moveTo(x - C_NUM * C_RADIUS, y);
    ctx.lineTo(x + C_NUM * C_RADIUS, y);
    ctx.closePath();
    ctx.stroke();
    ctx.beginPath();
    ctx.moveTo(x, y - C_NUM * C_RADIUS);
    ctx.lineTo(x, y + C_NUM * C_RADIUS);
    ctx.closePath();
    ctx.stroke();
    ctx.strokeStyle = 'red';
    for (var c = 0; c <= C_NUM; c++) {
        ctx.beginPath();
        ctx.arc(x, y, C_WIDTH / 2 + c * C_RADIUS, 0, 2 * Math.PI, true);
        ctx.closePath();
        ctx.stroke();
    }
});

Open in new window

0
 
LVL 1

Author Comment

by:JElster
ID: 40207923
thx again!
0

Featured Post

Secure Your Active Directory - April 20, 2017

Active Directory plays a critical role in your company’s IT infrastructure and keeping it secure in today’s hacker-infested world is a must.
Microsoft published 300+ pages of guidance, but who has the time, money, and resources to implement? Register now to find an easier way.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Obsolete font tag need to convert to CSS 3 36
Hide file extensions in Notepad++ tabs 2 55
Link Anchor Not working 9 49
Why is my $_POST not going to results page 10 41
This article describes how to create custom column layout styles for Bootstrap. The article uses 5 columns to illustrate the concept, but the principle can be extended to any number of columns.
Not sure what the best email signature size is? Are you worried about email signature image size? Follow this best practice guide.
In this tutorial viewers will learn how to style a corner ribbon overlay for an image using CSS Create a new class by typing ".Ribbon":  Define the class' "display:" as "inline-block": Define its "position:" as "relative": Define its "overflow:" as …
In this tutorial viewers will learn how to embed videos in a webpage using HTML5. Ensure your DOCTYPE declaration is set to HTML5: "<!DOCTYPE html>": Use the <video> tag to insert a video. Define the src as the URL of your video; this is similar to …

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question