A Python package, with no dependencies, producing SVG images of Slide Rule scales
Project description
slideruleimages
Python package to produce Slide Rule SVG images
A typical example might be:
from slideruleimages import Rule
# xvalue is where the C scale index is placed over the D value
# right is True if the mid scale is moved to the right
# right is False if the mid scale is moved to the left
# hairline is where the hairline cursor is placed over the D value,
# or zero if no hairline is used
rl = Rule(xvalue = 2.0, right = True, hairline=6.0,
topruleheight = 0, # No top rule
midruleheight = 120, # middle slider 120px high
btmruleheight = 120) # bottom rule 120 px high
# Add a C scale
rl.addCscale(midrule=20) # indicates this scale is put on the middle rule
# 20 pixels down from the top of the middle rule
# Add a D scale
rl.addDscale(btmrule=0) # indicates this scale is put on the bottom rule
# 0 pixels down from the top of the bottom rule
filename = "twoxthree.svg"
rl.write(filename)
print(f'{filename} created')
This would produce:
Each scale is 100px high, so in the example a midruleheight of 120 is set, with the C scale set onto the midrule, with a 20px space at the top of the rule, and the actual scale sitting against the bottom of the rule.
This package is intended to produce images useful for documents or web sites which illustrate logarithms or Slide Rules. One such web site is available at:
https://bernie-skipole.github.io/sliderule/
The package has one class, Rule, which has arguments, and defaults:
xvalue:float = 1.0,
right:bool = True
hairline:float=0.0
topruleheight:int = 120
midruleheight:int = 200
btmruleheight:int = 120
col:str = "#f9fc69"
The col string is an SVG color, by default a pale yellow, this can be set to a string such as "white" if a black and white printable rule is required.
The Rule class has methods:
write(filename)
addAscale(btmrule=-1, midrule=-1, toprule=-1)
addBscale(btmrule=-1, midrule=-1, toprule=-1)
addCscale(btmrule=-1, midrule=-1, toprule=-1)
addCFscale(btmrule=-1, midrule=-1, toprule=-1)
addDscale(btmrule=-1, midrule=-1, toprule=-1)
addDFscale(btmrule=-1, midrule=-1, toprule=-1)
addDIscale(btmrule=-1, midrule=-1, toprule=-1)
addKscale(btmrule=-1, midrule=-1, toprule=-1)
addLscale(btmrule=-1, midrule=-1, toprule=-1)
addLL00scale(btmrule=-1, midrule=-1, toprule=-1)
addLL01scale(btmrule=-1, midrule=-1, toprule=-1)
addLL02scale(btmrule=-1, midrule=-1, toprule=-1)
addLL03scale(btmrule=-1, midrule=-1, toprule=-1)
addLL0scale(btmrule=-1, midrule=-1, toprule=-1)
addLL1scale(btmrule=-1, midrule=-1, toprule=-1)
addLL2scale(btmrule=-1, midrule=-1, toprule=-1)
addLL3scale(btmrule=-1, midrule=-1, toprule=-1)
The write method saves the image file.
When adding a scale, only one of the arguments btmrule, midrule or toprule should be given a non -1 argument which indicates which rule the scale should appear on, and the integer number of pixels down from the top of that rule.
Scales are normally orientated with numeric characters above the scale, as shown on the C scale above, but if the value of zero is used, with the scale set to the top of a rule, then the characters are set below the scale, as shown on the D scale above.
The package is available on Pypi at:
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file slideruleimages-0.0.6.tar.gz.
File metadata
- Download URL: slideruleimages-0.0.6.tar.gz
- Upload date:
- Size: 11.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.32.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6027dff217d9d00a705947f453ee4531fe5cb20f5e3bbfe375cf69fd15e395b1
|
|
| MD5 |
38988738039a19e20ec5e7956a5ee3ee
|
|
| BLAKE2b-256 |
7d5c3a9a9de79eb90a41af24716b286a49284e8ef7746ee33effce15f2d995c9
|
File details
Details for the file slideruleimages-0.0.6-py3-none-any.whl.
File metadata
- Download URL: slideruleimages-0.0.6-py3-none-any.whl
- Upload date:
- Size: 22.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.32.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2d2a91d048fcc5897be81d414bea54f0602a055298d1c22fc3bf7e2096a06831
|
|
| MD5 |
c5587b442bc6d990d199c08db97ea748
|
|
| BLAKE2b-256 |
2d5de9ec0bb25f67223cadb75fed420e537d6cd7e23a09ed30646ad63aaf7741
|