kececilayout 0.4.9__py3-none-any.whl → 0.5.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
docs/conf.py ADDED
@@ -0,0 +1,97 @@
1
+ # Configuration file for the Sphinx documentation builder.
2
+ import os
3
+ import sys
4
+
5
+ # Proje kök dizinini Python yoluna ekle (kececilayout'u bulmak için)
6
+ sys.path.insert(0, os.path.abspath('..'))
7
+
8
+ # Proje Bilgileri
9
+ project = 'kececilayout'
10
+ copyright = '2025, Mehmet Keçeci'
11
+ author = 'Mehmet Keçeci'
12
+
13
+ # Sürüm Bilgisi (setuptools_scm kullanmıyorsanız sabit olarak tanımlayın)
14
+ # Gerçek sürümü modülden al (eğer mümkünse)
15
+ try:
16
+ from kececilayout import __version__
17
+ version = __version__
18
+ release = __version__
19
+ except (ImportError, AttributeError) as e:
20
+ print(f"Warning: Could not import __version__ from kececilayout: {e}")
21
+ # Varsayılan değerler korunur
22
+ # version = '0.2.7' # Geliştirme sürümü
23
+ # release = '0.2.7' # Yayın sürümü
24
+
25
+ # Ana belge
26
+ master_doc = 'index'
27
+
28
+ # Sphinx Uzantıları
29
+ extensions = [
30
+ 'sphinx.ext.autodoc',
31
+ 'sphinx.ext.viewcode', # "Show Source" linki
32
+ 'sphinx.ext.napoleon', # Google/NumPy docstring desteği
33
+ 'sphinx.ext.intersphinx', # Dış belgelere link (ör: Python, NetworkX)
34
+ 'sphinx.ext.autosummary', # Otomatik özet tabloları
35
+ 'sphinx_rtd_theme', # Read the Docs teması
36
+ ]
37
+
38
+ # Otomatik Özet (autosummary)
39
+ autosummary_generate = True
40
+ autodoc_default_options = {
41
+ 'members': True,
42
+ 'undoc-members': True,
43
+ 'show-inheritance': True,
44
+ 'special-members': '__init__',
45
+ 'exclude-members': '__weakref__'
46
+ }
47
+
48
+ # Mock Imports — RTD'de kurulamayan modülleri taklit et
49
+ autodoc_mock_imports = [
50
+ "igraph",
51
+ "networkit",
52
+ "rustworkx",
53
+ "graphillion",
54
+ "itertools", # Bu aslında stdlib ama bazen sorun çıkarabilir
55
+ ]
56
+
57
+ # Dış Belge Linkleri (intersphinx)
58
+ intersphinx_mapping = {
59
+ 'python': ('https://docs.python.org/3', None),
60
+ 'networkx': ('https://networkx.org/documentation/stable/', None),
61
+ 'matplotlib': ('https://matplotlib.org/stable/', None),
62
+ 'numpy': ('https://numpy.org/doc/stable/', None),
63
+ }
64
+
65
+ # Hariç Tutulan Dosyalar
66
+ exclude_patterns = [
67
+ '_build',
68
+ 'Thumbs.db',
69
+ '.DS_Store',
70
+ '**/.ipynb_checkpoints',
71
+ 'README.md' # HTML'e çevrilmemesi için
72
+ ]
73
+
74
+ # HTML Ayarları
75
+ html_theme = 'sphinx_rtd_theme'
76
+ html_static_path = ['_static']
77
+ html_logo = '_static/logo.png' # Opsiyonel: logo
78
+ html_favicon = '_static/favicon.ico' # Opsiyonel: favicon
79
+ html_title = "KeçeciLayout Docs"
80
+
81
+ # HTML Tema Seçenekleri
82
+ html_theme_options = {
83
+ 'navigation_depth': 4,
84
+ 'collapse_navigation': False,
85
+ 'sticky_navigation': True,
86
+ 'logo_only': True,
87
+ 'display_version': True,
88
+ 'prev_next_buttons_location': 'bottom',
89
+ }
90
+
91
+ # -- Extra: Eğer kececilayout içinde sürüm varsa, onu kullan (opsiyonel) --
92
+ # try:
93
+ # from kececilayout import __version__
94
+ # version = __version__
95
+ # release = __version__
96
+ # except (ImportError, AttributeError):
97
+ # pass
kececilayout/__init__.py CHANGED
@@ -10,7 +10,7 @@ import inspect
10
10
  import warnings
11
11
 
12
12
  # Paket sürüm numarası
13
- __version__ = "0.4.9"
13
+ __version__ = "0.5.1"
14
14
 
15
15
  # =============================================================================
16
16
  # OTOMATİK İÇE AKTARMA VE __all__ OLUŞTURMA
@@ -48,6 +48,20 @@ from .kececi_layout import ( # Veya fonksiyonların bulunduğu asıl modül
48
48
  get_text_color_for_bg,
49
49
  generate_soft_random_colors,
50
50
  generate_distinct_colors,
51
+ calculate_coordinates,
52
+ calculate_coordinates,
53
+ kececi_layout_2d,
54
+ kececi_layout_cylindrical,
55
+ kececi_layout_cubic,
56
+ kececi_layout_spherical,
57
+ kececi_layout_elliptical,
58
+ kececi_layout_toric,
59
+ draw_kececi_weighted,
60
+ draw_kececi_colored,
61
+ kececi_layout_edge,
62
+ _compute_positions,
63
+ _extract_graph_data,
64
+ _validate_directions,
51
65
 
52
66
  # Drawing functions
53
67
  draw_kececi,
@@ -88,7 +102,20 @@ __all__ = [
88
102
  'get_text_color_for_bg',
89
103
  'generate_soft_random_colors',
90
104
  'generate_distinct_colors',
91
-
105
+ 'calculate_coordinates',
106
+ 'kececi_layout_2d',
107
+ 'kececi_layout_cylindrical',
108
+ 'kececi_layout_cubic',
109
+ 'kececi_layout_spherical',
110
+ 'kececi_layout_elliptical',
111
+ 'kececi_layout_toric',
112
+ 'draw_kececi_weighted',
113
+ 'draw_kececi_colored',
114
+ 'kececi_layout_edge',
115
+ '_compute_positions',
116
+ '_extract_graph_data',
117
+ '_validate_directions',
118
+
92
119
  # Drawing functions
93
120
  'draw_kececi',
94
121
  '_draw_internal', # <- TESTLER İÇİN GEREKLİ
@@ -139,4 +166,3 @@ def old_function_placeholder():
139
166
  # Eğer bu eski fonksiyonu da dışa aktarmak istiyorsanız, __all__ listesine ekleyin
140
167
  # __all__.append('old_function_placeholder')
141
168
 
142
-
kececilayout/_version.py CHANGED
@@ -1,12 +1,10 @@
1
1
  # _version.py
2
2
 
3
- __version__ = "0.4.9"
4
- __license__ = "MIT"
3
+ __version__ = "0.5.0"
4
+ __license__ = "AGPL3.0-or-later"
5
5
  __description__ = "A deterministic node placement algorithm used in graph visualization. In this layout, nodes are arranged sequentially along a defined primary axis. Each subsequent node is then alternately offset along a secondary, perpendicular axis, typically moving to one side of the primary axis and then the other. Often, the magnitude of this secondary offset increases as nodes progress along the primary axis, creating a characteristic zig-zag or serpentine pattern."
6
6
  __author__ = "Mehmet Keçeci"
7
7
  __url__ = "https://github.com/WhiteSymmetry/kececilayout"
8
8
  __docs__ = "https://github.com/WhiteSymmetry/kececilayout" # Opsiyonel: Dokümantasyon linki
9
- __dependencies__ = ["python>=3.10"] # Diğer bağımlılıkları da ekleyebilirsiniz
10
-
11
-
9
+ __dependencies__ = ["python>=3.11"] # Diğer bağımlılıkları da ekleyebilirsiniz
12
10