simetri.graphics
simetri.graphics is a module that provides a simple and intuitive way to create geometric shapes and patterns.
1"""simetri.graphics is a module that provides a simple and intuitive way to create geometric shapes and patterns.""" 2 3# status: prototype 4# This is a proof of concept. 5# Testing is incomplete. 6# Everything is subject to change till we release a beta version. 7 8__version__ = "0.0.6" 9__author__ = "Fahri Basegmez" 10 11from math import ( 12 cos, 13 sin, 14 pi, 15 atan, 16 atan2, 17 sqrt, 18 degrees, 19 radians, 20 exp, 21 log, 22 log10, 23 e, 24 tau, 25 ceil, 26 floor, 27 trunc, 28 hypot, 29 gcd, 30 factorial, 31 comb, 32 perm, 33 prod, 34) 35from itertools import cycle, combinations, permutations, product 36from random import choice, choices, randint, random, uniform, shuffle 37from functools import lru_cache as memoize 38from numpy import linspace, arange, array, zeros, ones, full, eye, diag 39 40from ..helpers.utilities import * 41from .core import * 42from ..frieze import frieze 43from ..settings.settings import * 44from ..graphics.common import * 45 46 47set_defaults() 48from ..geometry.geometry import * 49from ..geometry.ellipse import * 50from ..geometry.bezier import * 51from ..geometry.hobby import * 52from ..geometry.circle import * 53from ..geometry.sine import * 54from .affine import * 55from .dots import * 56from ..graphics.sketch import * 57from ..canvas.canvas import * 58from ..canvas.grids import * 59from ..helpers.illustration import * 60from ..helpers.constraint_solver import Constraint, solve 61from ..graphics.shapes import * 62from ..helpers.modifiers import * 63from ..lace import Lace 64from ..colors.colors import * 65from ..colors.palettes import * 66from ..colors.swatches import * 67import simetri.colors as colors 68from ..tikz.tikz import * 69from ..helpers.validation import check_version 70from ..stars import stars 71from ..wallpaper import wallpaper 72from ..graphics.all_enums import * 73from ..extensions.turtle_sg import Turtle, spirolateral 74from ..extensions.l_system import l_system 75from ..extensions.easing import * 76from ..extensions.tree import make_tree, TreeNode 77from .path import LinPath 78from .pattern import * 79from ..image import image as Image 80set_tikz_defaults() 81 82import simetri.canvas.style_map as style_map 83 84def set_alias_maps(): 85 style_map._set_shape_style_alias_map() 86 style_map._set_tag_style_alias_map() 87 style_map._set_line_style_alias_map() 88 style_map._set_fill_style_alias_map() 89 style_map._set_marker_style_alias_map() 90 style_map._set_pattern_style_alias_map() 91 style_map._set_frame_style_alias_map() 92 style_map._set_shape_args() 93 style_map._set_batch_args() 94 95 96# if any of the styles is changed, this should be called again!!! 97# set_alias_maps()
def
set_alias_maps():
85def set_alias_maps(): 86 style_map._set_shape_style_alias_map() 87 style_map._set_tag_style_alias_map() 88 style_map._set_line_style_alias_map() 89 style_map._set_fill_style_alias_map() 90 style_map._set_marker_style_alias_map() 91 style_map._set_pattern_style_alias_map() 92 style_map._set_frame_style_alias_map() 93 style_map._set_shape_args() 94 style_map._set_batch_args()