pd-code-rotate 0.0.2__tar.gz → 0.1.1__tar.gz

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.
@@ -0,0 +1,64 @@
1
+ Metadata-Version: 2.4
2
+ Name: pd-code-rotate
3
+ Version: 0.1.1
4
+ Summary: given a link or knot,rotate its 2d diagram by changing its pd_code.
5
+ License: MIT
6
+ License-File: LICENSE
7
+ Author: GGN_2015
8
+ Author-email: neko@jlulug.org
9
+ Requires-Python: >=3.10
10
+ Classifier: License :: OSI Approved :: MIT License
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: Programming Language :: Python :: 3.10
13
+ Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
16
+ Classifier: Programming Language :: Python :: 3.14
17
+ Requires-Dist: pd-code-pre-nxt (>=0.1.0)
18
+ Requires-Dist: pd-code-sanity (>=0.1.0)
19
+ Description-Content-Type: text/markdown
20
+
21
+ # pd-code-rotate
22
+
23
+ Rotate the local representation of every crossing while respecting component orientation.
24
+
25
+ ## Installation
26
+
27
+ ```bash
28
+ pip install pd-code-rotate
29
+ ```
30
+
31
+ ## Usage example
32
+
33
+ ```python
34
+ from pd_code_rotate import rotate
35
+
36
+ pd = [[1, 5, 2, 4], [3, 1, 4, 6], [5, 3, 6, 2]]
37
+ print(rotate(pd))
38
+ ```
39
+
40
+ ## Algorithm
41
+
42
+ Predecessor/successor maps determine the direction of each strand. For crossing `[a,b,c,d]`, the implementation selects either `[b,a,d,c]` or `[d,c,b,a]` so the rotated crossing remains consistent with the canonical component direction. Arc incidences and crossing count are preserved.
43
+
44
+ ## Input conventions
45
+
46
+ A PD code is represented as a list of four-entry crossings. Arc labels normally occur exactly twice. Public functions validate inputs and return new values rather than mutating caller-owned data unless their API explicitly says otherwise.
47
+
48
+ ## External software
49
+
50
+ No external software is required.
51
+
52
+ ## Development
53
+
54
+ Run examples and package checks before release. Python packages require Python 3.10 or newer. Build PyPI artifacts with:
55
+
56
+ ```bash
57
+ poetry check
58
+ poetry build
59
+ ```
60
+
61
+ ## License
62
+
63
+ MIT. See `LICENSE`.
64
+
@@ -0,0 +1,43 @@
1
+ # pd-code-rotate
2
+
3
+ Rotate the local representation of every crossing while respecting component orientation.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ pip install pd-code-rotate
9
+ ```
10
+
11
+ ## Usage example
12
+
13
+ ```python
14
+ from pd_code_rotate import rotate
15
+
16
+ pd = [[1, 5, 2, 4], [3, 1, 4, 6], [5, 3, 6, 2]]
17
+ print(rotate(pd))
18
+ ```
19
+
20
+ ## Algorithm
21
+
22
+ Predecessor/successor maps determine the direction of each strand. For crossing `[a,b,c,d]`, the implementation selects either `[b,a,d,c]` or `[d,c,b,a]` so the rotated crossing remains consistent with the canonical component direction. Arc incidences and crossing count are preserved.
23
+
24
+ ## Input conventions
25
+
26
+ A PD code is represented as a list of four-entry crossings. Arc labels normally occur exactly twice. Public functions validate inputs and return new values rather than mutating caller-owned data unless their API explicitly says otherwise.
27
+
28
+ ## External software
29
+
30
+ No external software is required.
31
+
32
+ ## Development
33
+
34
+ Run examples and package checks before release. Python packages require Python 3.10 or newer. Build PyPI artifacts with:
35
+
36
+ ```bash
37
+ poetry check
38
+ poetry build
39
+ ```
40
+
41
+ ## License
42
+
43
+ MIT. See `LICENSE`.
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "pd-code-rotate"
3
- version = "0.0.2"
3
+ version = "0.1.1"
4
4
  description = "given a link or knot,rotate its 2d diagram by changing its pd_code."
5
5
  authors = [
6
6
  {name = "GGN_2015",email = "neko@jlulug.org"}
@@ -9,8 +9,8 @@ license = {text = "MIT"}
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
11
11
  dependencies = [
12
- "pd_code_sanity",
13
- "pd_code_pre_nxt"
12
+ "pd-code-sanity>=0.1.0",
13
+ "pd-code-pre-nxt>=0.1.0"
14
14
  ]
15
15
 
16
16
 
@@ -1,38 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: pd-code-rotate
3
- Version: 0.0.2
4
- Summary: given a link or knot,rotate its 2d diagram by changing its pd_code.
5
- License: MIT
6
- License-File: LICENSE
7
- Author: GGN_2015
8
- Author-email: neko@jlulug.org
9
- Requires-Python: >=3.10
10
- Classifier: License :: OSI Approved :: MIT License
11
- Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.10
13
- Classifier: Programming Language :: Python :: 3.11
14
- Classifier: Programming Language :: Python :: 3.12
15
- Classifier: Programming Language :: Python :: 3.13
16
- Classifier: Programming Language :: Python :: 3.14
17
- Requires-Dist: pd_code_pre_nxt
18
- Requires-Dist: pd_code_sanity
19
- Description-Content-Type: text/markdown
20
-
21
- # pd_code_rotate
22
- given a link or knot,rotate its 2d diagram by changing its pd_code.
23
-
24
- ## Install
25
-
26
- ```bash
27
- pip install pd-code-rotate
28
- ```
29
-
30
- ## Usage
31
-
32
- ```python
33
- import pd_code_rotate
34
-
35
- pd_code = [[1, 5, 2, 4], [3, 1, 4, 6], [5, 3, 6, 2]]
36
- print(pd_code_rotate.rotate(pd_code))
37
- ```
38
-
@@ -1,17 +0,0 @@
1
- # pd_code_rotate
2
- given a link or knot,rotate its 2d diagram by changing its pd_code.
3
-
4
- ## Install
5
-
6
- ```bash
7
- pip install pd-code-rotate
8
- ```
9
-
10
- ## Usage
11
-
12
- ```python
13
- import pd_code_rotate
14
-
15
- pd_code = [[1, 5, 2, 4], [3, 1, 4, 6], [5, 3, 6, 2]]
16
- print(pd_code_rotate.rotate(pd_code))
17
- ```
File without changes