Loading [MathJax]/extensions/TeX/AMSsymbols.js
amino
1.0-beta2
Lightweight Robot Utility Library
Main Page
Download
Tutorial
Linear Algebra
Rotation
Transformation
Scene Graphs
Kinematics
Collision
Motion Planning
Documentation
Installation
Viewer GUI
Scene Compiler
Scene Files
FAQ
API
File List
File Members
All
a
o
Functions
a
o
Variables
Typedefs
a
Enumerations
Enumerator
a
Macros
a
Class List
Class Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
i
l
m
n
o
p
q
r
s
t
u
v
x
y
z
~
Variables
a
b
c
d
e
f
h
i
l
m
n
o
p
q
r
s
t
v
w
x
y
z
Typedefs
Lisp API
Amino Core
Amino RX
Amino CLPython
About
License
Acknowledgments
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
util3.py
1
# Copyright (c) 2019, Colorado School of Mines
2
# All rights reserved.
3
#
4
# Author(s): Neil T. Dantam <ndantam@mines.edu>
5
#
6
# Redistribution and use in source and binary forms, with or without
7
# modification, are permitted provided that the following conditions
8
# are met:
9
#
10
# * Redistributions of source code must retain the above copyright
11
# notice, this list of conditions and the following disclaimer.
12
#
13
# * Redistributions in binary form must reproduce the above
14
# copyright notice, this list of conditions and the following
15
# disclaimer in the documentation and/or other materials provided
16
# with the distribution.
17
#
18
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
19
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
20
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
21
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22
# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
23
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
25
# TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
27
# ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
28
# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
29
# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30
# SUCH DAMAGE.
31
"""Utilities, python 3"""
32
33
34
def
is_int(thing):
35
"""Returns True when thing is an integer type."""
36
return
isinstance(thing, int)
37
38
39
def
is_string(thing):
40
"""Returns True when thing is a string type."""
41
return
isinstance(thing, str)
42
43
44
def
ensure_cstring(pystring):
45
"""Return a string we can pass to C"""
46
if
isinstance(pystring, bytes):
47
return
pystring
48
return
pystring.encode(
'utf-8'
)