summaryrefslogtreecommitdiff
path: root/python-3dof-hexapod-ik-generator.spec
blob: da0890e25fd560e8d867e01bea5f98a01b2ce81f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
%global _empty_manifest_terminate_build 0
Name:		python-3dof-hexapod-ik-generator
Version:	1.0.0
Release:	1
Summary:	This is a module which calculates IK servo angles for leaning and shifting a 3dof hexapod's body.
License:	MIT
URL:		https://github.com/macaquedev
Source0:	https://mirrors.aliyun.com/pypi/web/packages/9b/2b/2a7b32dad61d8bd7dd38c699b9d66ea39b29b636b707ff87cd651b5ed980/3dof-hexapod-ik-generator-1.0.0.tar.gz
BuildArch:	noarch


%description
This is a simple Python package for hexapod IK calculations.

Commands:

To be imported as ikengine

class IKEngine # initialises the class object. Takes 4 arguments in mm - coxaLength, femurLength, tibiaLength and bodySideLength. Optionally can take a 5th argument that can either be a list or a tuple. Please pass the servos that need to be reversed into this tuple/list. They will be reversed (angle = 180 - angle) for the whole runtime of your program that utilises this library.

shift_lean(posX, posY, posZ, rotX, rotY, rotZ) # returns an array of 18 servo angles that are calculated using IK from the given variables that correspond to the translation and tilt of the body of the hexapod. The order goes from tibia to coxa, from left to right and then from front to back

Any questions or suggestions? Please feel free to contact me at macaquedev@gmail.com




%package -n python3-3dof-hexapod-ik-generator
Summary:	This is a module which calculates IK servo angles for leaning and shifting a 3dof hexapod's body.
Provides:	python-3dof-hexapod-ik-generator
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
%description -n python3-3dof-hexapod-ik-generator
This is a simple Python package for hexapod IK calculations.

Commands:

To be imported as ikengine

class IKEngine # initialises the class object. Takes 4 arguments in mm - coxaLength, femurLength, tibiaLength and bodySideLength. Optionally can take a 5th argument that can either be a list or a tuple. Please pass the servos that need to be reversed into this tuple/list. They will be reversed (angle = 180 - angle) for the whole runtime of your program that utilises this library.

shift_lean(posX, posY, posZ, rotX, rotY, rotZ) # returns an array of 18 servo angles that are calculated using IK from the given variables that correspond to the translation and tilt of the body of the hexapod. The order goes from tibia to coxa, from left to right and then from front to back

Any questions or suggestions? Please feel free to contact me at macaquedev@gmail.com




%package help
Summary:	Development documents and examples for 3dof-hexapod-ik-generator
Provides:	python3-3dof-hexapod-ik-generator-doc
%description help
This is a simple Python package for hexapod IK calculations.

Commands:

To be imported as ikengine

class IKEngine # initialises the class object. Takes 4 arguments in mm - coxaLength, femurLength, tibiaLength and bodySideLength. Optionally can take a 5th argument that can either be a list or a tuple. Please pass the servos that need to be reversed into this tuple/list. They will be reversed (angle = 180 - angle) for the whole runtime of your program that utilises this library.

shift_lean(posX, posY, posZ, rotX, rotY, rotZ) # returns an array of 18 servo angles that are calculated using IK from the given variables that correspond to the translation and tilt of the body of the hexapod. The order goes from tibia to coxa, from left to right and then from front to back

Any questions or suggestions? Please feel free to contact me at macaquedev@gmail.com




%prep
%autosetup -n 3dof-hexapod-ik-generator-1.0.0

%build
%py3_build

%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
	find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
	find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
	find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
	find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
	find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .

%files -n python3-3dof-hexapod-ik-generator -f filelist.lst
%dir %{python3_sitelib}/*

%files help -f doclist.lst
%{_docdir}/*

%changelog
* Thu Jun 08 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.0-1
- Package Spec generated