mirror of
https://github.com/UnickSoft/graphonline.git
synced 2025-07-01 23:36:00 +00:00
Add snowflake vertex shape
This commit is contained in:
parent
4eeb746d21
commit
0c26400c6c
@ -292,4 +292,6 @@ We have added Dutch translation 🇳🇱. Thank you Willie de Wit</a>";
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -292,4 +292,6 @@
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -255,4 +255,6 @@
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Schneeflocke";
|
||||||
?>
|
?>
|
||||||
|
@ -293,4 +293,6 @@
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -292,4 +292,6 @@ We have added Dutch translation 🇳🇱. Thank you Willie de Wit</a>";
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -292,4 +292,6 @@ Tenemos traducciones en griego 🇬🇷.</a> <a href=\"https://github.com/UnickS
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -260,4 +260,6 @@
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -257,4 +257,6 @@
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -292,4 +292,6 @@ Dodaliśmy polskie tłumaczenie, Patryk</a>";
|
|||||||
$g_lang["bad_inc_pair_message"] = "Nie można stworzyć grafu. Lista krawędzi ma zły format. Kliknij \"fix\" przycisk,a= aby naprawić listę krawędzi lub \"help\" przycisk aby otworzyć stronę z pomocą dotyczącą formatu pliku";
|
$g_lang["bad_inc_pair_message"] = "Nie można stworzyć grafu. Lista krawędzi ma zły format. Kliknij \"fix\" przycisk,a= aby naprawić listę krawędzi lub \"help\" przycisk aby otworzyć stronę z pomocą dotyczącą formatu pliku";
|
||||||
$g_lang["edge_list_wrong_format"] = "Format listy krawędzi jest niepoprawny";
|
$g_lang["edge_list_wrong_format"] = "Format listy krawędzi jest niepoprawny";
|
||||||
$g_lang["fix_button"] = "Napraw";
|
$g_lang["fix_button"] = "Napraw";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -258,4 +258,6 @@
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -294,5 +294,6 @@
|
|||||||
$g_lang["bad_inc_pair_message"] = "Ошибка создания графа. Список рёбер имеет неправильный формат. Нажимте кнопку \"исправить\" чтобы исправить список или кнопку \"справка\" чтобы открыть справку о формате";
|
$g_lang["bad_inc_pair_message"] = "Ошибка создания графа. Список рёбер имеет неправильный формат. Нажимте кнопку \"исправить\" чтобы исправить список или кнопку \"справка\" чтобы открыть справку о формате";
|
||||||
$g_lang["edge_list_wrong_format"] = "Неправильный формат списка рёбер";
|
$g_lang["edge_list_wrong_format"] = "Неправильный формат списка рёбер";
|
||||||
$g_lang["fix_button"] = "исправить";
|
$g_lang["fix_button"] = "исправить";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Снежинка";
|
||||||
?>
|
?>
|
||||||
|
@ -254,4 +254,6 @@
|
|||||||
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
$g_lang["bad_inc_pair_message"] = "Cannot create graph. Edge list has wrong format. Click \"fix\" button to fix edge list or \"help\" button to open help about format";
|
||||||
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
$g_lang["edge_list_wrong_format"] = "Edge list format is incorrect";
|
||||||
$g_lang["fix_button"] = "fix";
|
$g_lang["fix_button"] = "fix";
|
||||||
|
|
||||||
|
$g_lang["snowflake"] = "Snowflake";
|
||||||
?>
|
?>
|
||||||
|
@ -11,7 +11,8 @@ const VertexCircleShape = 0,
|
|||||||
VertexTriangleShape = 2,
|
VertexTriangleShape = 2,
|
||||||
VertexPentagonShape = 3,
|
VertexPentagonShape = 3,
|
||||||
VertexHomeShape = 4,
|
VertexHomeShape = 4,
|
||||||
VertextTextboxShape = 5;
|
VertexTextboxShape = 5;
|
||||||
|
VertexSnowflakeShape = 6;
|
||||||
|
|
||||||
// Common text position
|
// Common text position
|
||||||
const CommonTextCenter = 0,
|
const CommonTextCenter = 0,
|
||||||
@ -88,6 +89,44 @@ function GetTextboxPoints(diameter, text)
|
|||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function GetShowflakePoints(diameter)
|
||||||
|
{
|
||||||
|
var res = [];
|
||||||
|
|
||||||
|
var superSmallRadius = diameter * 0.8 / 2;
|
||||||
|
var smallRadius = diameter * 0.95 / 2;
|
||||||
|
var bigRadius = diameter * 1.5 / 2;
|
||||||
|
let angel = 8;
|
||||||
|
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), - angel));
|
||||||
|
res.push(new Point(smallRadius, 0));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), angel));
|
||||||
|
res.push(new Point(bigRadius, 0).rotate(new Point(0, 0), 30));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 - angel));
|
||||||
|
res.push(new Point(smallRadius, 0).rotate(new Point(0, 0), 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + angel));
|
||||||
|
res.push(new Point(bigRadius, 0).rotate(new Point(0, 0), 30 + 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + 60 - angel));
|
||||||
|
res.push(new Point(smallRadius, 0).rotate(new Point(0, 0), 60 + 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + 60 + angel));
|
||||||
|
res.push(new Point(bigRadius, 0).rotate(new Point(0, 0), 30 + 60 + 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60 - angel));
|
||||||
|
res.push(new Point(smallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60 + angel));
|
||||||
|
|
||||||
|
res.push(new Point(bigRadius, 0).rotate(new Point(0, 0), 30 + 60 + 60 + 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60 + 60 - angel));
|
||||||
|
res.push(new Point(smallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60 + 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60 + 60 + angel));
|
||||||
|
res.push(new Point(bigRadius, 0).rotate(new Point(0, 0), 30 + 60 + 60 + 60 + 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60 + 60 + 60 - angel));
|
||||||
|
res.push(new Point(smallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60 + 60 + 60));
|
||||||
|
res.push(new Point(superSmallRadius, 0).rotate(new Point(0, 0), 60 + 60 + 60 + 60 + 60 + angel));
|
||||||
|
res.push(new Point(bigRadius, 0).rotate(new Point(0, 0), 30 + 60 + 60 + 60 + 60 + 60));
|
||||||
|
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
function GetPointsForShape(shape, diameter, text=null)
|
function GetPointsForShape(shape, diameter, text=null)
|
||||||
{
|
{
|
||||||
switch (parseInt(shape))
|
switch (parseInt(shape))
|
||||||
@ -95,7 +134,8 @@ function GetPointsForShape(shape, diameter, text=null)
|
|||||||
case VertexSquareShape: return GetSquarePoints(diameter); break;
|
case VertexSquareShape: return GetSquarePoints(diameter); break;
|
||||||
case VertexTriangleShape: return GetTrianglePoints(diameter); break;
|
case VertexTriangleShape: return GetTrianglePoints(diameter); break;
|
||||||
case VertexPentagonShape: return GetPentagonPoints(diameter); break;
|
case VertexPentagonShape: return GetPentagonPoints(diameter); break;
|
||||||
case VertextTextboxShape: return GetTextboxPoints(diameter, text); break;
|
case VertexTextboxShape: return GetTextboxPoints(diameter, text); break;
|
||||||
|
case VertexSnowflakeShape: return GetShowflakePoints(diameter); break;
|
||||||
default: return null; break;
|
default: return null; break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -107,7 +147,9 @@ function GetSizeForShape(shape, diameter)
|
|||||||
case VertexSquareShape: return diameter; break;
|
case VertexSquareShape: return diameter; break;
|
||||||
case VertexTriangleShape: return diameter * 1.5; break;
|
case VertexTriangleShape: return diameter * 1.5; break;
|
||||||
case VertexPentagonShape: return diameter * 1.2; break;
|
case VertexPentagonShape: return diameter * 1.2; break;
|
||||||
case VertextTextboxShape: return diameter; break;
|
case VertexTextboxShape: return diameter; break;
|
||||||
|
case VertexSnowflakeShape: return diameter * 1.5; break;
|
||||||
|
|
||||||
default: return diameter; break;
|
default: return diameter; break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
<script src="<?= Root('i/js/dev/jquery-ui.js')?>"></script>
|
<script src="<?= Root('i/js/dev/jquery-ui.js')?>"></script>
|
||||||
<script src="<?= Root('i/js/dev/jquery.feedback_me.js')?>"></script>
|
<script src="<?= Root('i/js/dev/jquery.feedback_me.js')?>"></script>
|
||||||
<script src="<?= Root("script/canvas2svg.js")?>" ></script>
|
<script src="<?= Root("script/canvas2svg.js")?>" ></script>
|
||||||
<script src="<?= Root("script/example.js?v=68")?>" ></script>
|
<script src="<?= Root("script/example.js?v=69")?>" ></script>
|
||||||
|
|
||||||
<!-- Yandex.RTB -->
|
<!-- Yandex.RTB -->
|
||||||
<script>window.yaContextCb=window.yaContextCb||[]</script>
|
<script>window.yaContextCb=window.yaContextCb||[]</script>
|
||||||
@ -536,6 +536,7 @@
|
|||||||
<option value="2"><?= L('triangle')?></option>
|
<option value="2"><?= L('triangle')?></option>
|
||||||
<option value="3"><?= L('pentagon')?></option>
|
<option value="3"><?= L('pentagon')?></option>
|
||||||
<option value="5"><?= L('textbox')?></option>
|
<option value="5"><?= L('textbox')?></option>
|
||||||
|
<option value="6"><?= L('snowflake')?></option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user