API连接器到Pripravto服务
ocapi的Python项目详细描述
这是为家具制造商提供http://www.pripravto.cz服务的api连接器。你应该 能够使用它创建家具的自定义设计,下载数据 最终建立你的部分接口。连接器是基于http get和 post方法和它使用您的服务帐户。
对于这个项目,我们在http://www.pyvmmonitor.com上使用pyvmmonitor
安装
对于安装,您可以下载软件包或通过pip进行安装。下载了你 可以从https://pypi.python.org/pypi/ocapi解包或获取并安装:
#download archive wget https://bitbucket.org/pripravto/ocapi/get/default.tar.gz cd /tmp virtualenv test source test/bin/activate tar -xvf default.tar.gz #specify correct name cd pripravto....
安装:
python setup.py install
或通过pip安装:
pip install ocapi
快速启动
首先,您应该在https://pripravto.cz服务上获得您的帐户,当您拥有它时 正常登录服务。然后可以从打开python控制台开始 以及导入ocapi:
import ocapi.api as oc import math args = {'name':'test2','position':[0,0,0],'size':[1000,1000,1000]} #set your user credentials here prod = oc.CabinetMaker(args, username="test",password="test") for i in range(36): size = [18,math.sin(math.radians(i*10))*50+80,18] rot = [0,0,10+i*2] prod.add_element(pos=[i*20,0,0],size=size,rot=rot) prod.finish()
这是一个部分示例,将向您展示此api的基本用法。这将创建 由sin函数确定大小并由一系列 迭代。
为了建立更有用的东西,你可以通过写下 一个功能:
args = {'name':'cabinet2','position':[0,0,0],'size':[600,600,1000]} prod.parse_args(args) #build our base parts prod.add_basic() #add doors prod.add_doors() prod.finish()
创建数据后,您还可以检查在服务上创建的数据类型 自己也可以下载图片等。
用户名和密码在对象开始时指定:
prod = oc.CabinetMaker(args, username="test",password="test", host="test.pripravto.cz") #your username and password is from https://pripravto.cz/oc/register/start
为了完成注册过程,您需要您的功能电子邮件地址并填写 注册所需的数据。您应该为您的用户凭据保密。 例如,可以在此api连接器上构建什么,请查看http://pripravto.cz/en/blog 我们举例子的地方。
更复杂的例子可以是:
args = {'size': [1200, 600, 900], 'thickConstr': 18, 'frontOut': True, 'socle': 0, 'doorShift': 0, 'matConstr': '45', 'elementInfo': {'fittings': {'KOL': 5}, 'production': {'EDGEBANDER': 2, 'HAND': 3, 'SAW': 1, 'CNC': 1, 'COATING': False}, 'group': 'spodni_2', 'visibility': 'NORMAL', 'block': True}, 'position': [2700, 0, 0], 'rotation': [-30, 0, 0], 'matFront': 'U625', 'name': 'spodni_2'} spodni_2 = oc.CabinetMaker(args, username="test",password="test") spodni_2.add_top(info=None,area_id=None,mat='F870',bars_width=None,pos=None,diff=None,save=True,size=38) spodni_2.add_frame(info=None,area_id=None,thick_fill=None,mat=45,diff_fill=[0, 0, 5, 0, 0, 0],insert_fill=False,width=150,mat_fill=None,low_profile=False,planes=4,diff=[0, 50, 50, 0, 0, 0],thick=18,save=True,order=[0, 2, 1]) spodni_2.add_dividers(info=None,area_id=None,array_dist=[2, 1],mat=None,part_size=None,thickness=None,part=False,diff=None,save=True,typ='B',areas=True) spodni_2.add_basic(info=None,area_id=True,variant='H',back=5,socle=None,diff=None,save=True,top_bars=None) spodni_2.add_shelve(info=None,area_id=True,mat=None,number=[4, 4, 5],diff=None,rotation=None,save=True,size=None) spodni_2.add_doors(info=None,area_id=0,handleHeight='TOP',mat=None,grains=True,handleSize=[160, 25, 5],stacking='HORIZONTAL',number=2,door_type='AUTOMAT',handleSide=None,diff=None,handleOrientation='VERTICAL',pars_front=[3, 3, 3, 3, 3],save=True,handlePos=[50, 50]) spodni_2.add_doors(info=None,area_id=1,handleHeight='TOP',mat=None,grains=True,handleSize=[160, 25, 5],stacking='HORIZONTAL',number=1,door_type='AUTOMAT',handleSide=None,diff=None,handleOrientation='VERTICAL',pars_front=[3, 3, 3, 3, 3],save=True,handlePos=[50, 50]) spodni_2.finish() spodni_2.get_image()
这个例子为厨房创建了基本部件,它有几个其他的项目 由OC服务实时生成。
如果您想将crendentials设置为始终按您的方式进行, 只需将子类设置为cabinetmaker并在init中设置默认参数。
更多关于Pripravto服务或关于此页面的文档请参见网页或 oc.cabinetmaker类。
其他数据
还可以下载其他图像,如优化和 服务器可视化。可能的解决办法是这样使用它。
con.
开发
您可以联系我们或在https://bitbucket.org/pripravto/ocapi上提出问题 developmnet也是在bitbucket上创建的,您可以克隆存储库并启动 做出改变。我们还计划使用这个api连接器来连接 使用不同的应用程序更加快速和方便。