#javascript #html #svg
#javascript #HTML #svg
Вопрос:
Я должен создать такую программу, которая рисует круг и прямоугольник из входных данных. Мой круг работает, но я не знаю, как мне это сделать с помощью rectangle. В прямоугольнике входные данные представляют собой длину стороны прямоугольника в 2 стороны.
t = new Array("red");
function felvesz() {
t.push(document.getElementById("szin").value);
}
function kirajzol() {
switch (document.getElementById("sikidom").value) {
case "kor":
r = prompt("Kerem a sugarat!");
rand = Math.floor(Math.random() * t.length);
str = "A kör területe: " r * r * Math.PI "<br><br>";
str = "<svg><circle cx=100 cy=100 r=" r " fill=" t[rand] "></svg>";
document.getElementById("ide").innerHTML = str;
break;
case "teglalap":
a = prompt("Kerem az egyik oldalt!");
b = prompt("Kerem a masik oldalt");
rand = Math.floor(Math.random() * t.length);
str = "A téglalap területe " a * b "<br><br>";
document.getElementById("ide").innerHTML = str;
}
}
<h2>harmadik feladat</h2>
<input type="text" id="szin"><br>
<button type="button" onclick="felvesz">hozzáad</button>
<br><br> Válassz egy síkidomot:<br>
<select id="sikidom">
<option value="kor">Kör</option>
<option value="teglalap">Téglalap</option>
</select>
<button onclick="kirajzol()">Kirajzol</button>
<p id="ide"></p>
Ответ №1:
Вы можете запросить обе стороны и использовать некоторую базу, чтобы преобразовать ее в пиксели и установить ширину и высоту (так же, как вы сделали для радиуса окружности).
В этом случае может быть что-то вроде сторон 4 и 2, и умножьте на 100, чтобы создать ширину и высоту.
<svg>
<rect width="400" height="200" />
No support for inline SVG.
</svg>
Ссылка для svg / rect: https://www.w3schools.com/graphics/svg_rect.asp
Комментарии:
1. W3Schools — это зло. Использовать developer.mozilla.org/en-US/docs/Web/SVG/Element/rect вместо этого