简介
如果太阳是一个足球,那么地球将有多大?木星将有多远? 如果将整个太阳系缩小置于我的后院或教室里,每个行星又该有多大?
VOS4O 提供了一个简单的方法来计算太阳系的比例模型。通过设定 参考量(如: 直径,距离,或缩放比例),VOS4O 将给出所有行星的直径和距离, 轨道偏心率, 以及它们在给定日期相对于太阳的位置(日心经度)。
如果太阳是一个足球,那么地球将有多大?木星将有多远? 如果将整个太阳系缩小置于我的后院或教室里,每个行星又该有多大?
VOS4O 提供了一个简单的方法来计算太阳系的比例模型。通过设定 参考量(如: 直径,距离,或缩放比例),VOS4O 将给出所有行星的直径和距离, 轨道偏心率, 以及它们在给定日期相对于太阳的位置(日心经度)。
为了构建属于你的太阳系,请使用在线表格 或直接通过API进行查询。结果将以表格及图片的形式返回。
在线表格默认显示地球太阳的比例尺距离为1米的情况下,行星的直径和距离 以及当前日期下它们相对于太阳的位置(平均日心经度)。要更改比列尺或者日期,请重新配置 标签,并通过设定如下参数构建你的太阳系:
要设置可选参数,请点击按钮
:点击
按钮根据提供的信息对太阳系进行缩放。计算结束时,表格和图片将自动显示。若需下载结果,设置
标签。 下载图片,请先选择所需格式(SVG,PNG,PDF,TIFF),然后单击 按钮。 下载表格,请先选择所需格式(CSV,VOTABLE),然后单击 按钮。API(应用程序界面)使您可以直接从第三方应用程序或软件访问VOS4O。 也可用于创建个人网页用于绘制太阳系比例图, 或者用于编写查询脚本以在专用程序中检索生成的表格和图像。 了解更多 ...
API (应用程序界面) 使您可以直接从您的软件访问 VOS4O。 您可用其创建个人网页来缩放太阳系,或者用于编写查询脚本以在专用程序中检索生成的 表格和图片。 我们提供了两种方法进行查询服务:
wget
,
curl
或者Javascript对象XMLHttpRequest
。SOAP+WSDL+HTTP
协议构建的Web服务形式访问
(WS)。该API免费对外开放使用, 适用于任何非营利性 (个人或教育)用途。 如果您使用VOS4O提供的服务开发应用程序,我们强烈建议您与我们 联系 以接收到最新的信息。
请使用我们的问题跟踪器 来报告错误或提交新功能请求。
我们提供了三种方法来定义比例尺:
x:y
1:1000000
(百万分之一)时。
所有行星的距离和直径都将除以一百万。
a(行星):x
单位=m
(米),则比例尺a(海王星):7.22
将创建一个太阳 海王星的距离为7.22米的太阳系视图。
d(行星):x
单位=m
(米),则比例尺d(地球):1
将创建一个地球直径为1米的太阳系视图。
VOS4O生成的输出表格列出了在给定 比例尺下, 太阳和行星的直径和行星到太阳的距离,同时也列出了行星的轨道偏心率, 以及其在指定历元下的平均日心经度。
VOS4O生成的第一张图片为根据给定 比例尺生成的太阳系比例图。 行星按照其相对距离沿对数轴绘制,旁边显示了它的直径和到太阳的距离(按照比例缩放)。
第二张图片为太阳系的俯视图。 每个行星均位于其轨道的平均日心经度位置(按所指定的历元计算)。 日心经度以平均春分点为参考,由符号γ表示。
使用非交互式Internet软件(如
wget
,
curl
),
或采用Internet浏览器,通过其HTTP接入点调用服务
https://ssp.imcce.fr/webservices/vos4o/scale.php?[parameters]
其中[参数]
为参数列表(在
表1中定义),
通过&分隔开。如果未设置任何参数,将采用表1中的默认值设置太阳系。
参数 | 定义 | 格式 |
---|---|---|
-scale=<string> |
设定太阳系的比例尺。默认值: 1:1 | X:Y 或 a|d(行星): x |
-autoscale=<int> |
对于选定的比例尺,当距离和直径过小或过大时自动调整其单位。 默认值: 1* | 0 or 1 |
-scalefactor=<double> |
如果比例尺由X:y或距离设定,则将直径乘以该值;如果比例尺由直径设定, 则将距离除以该值。默认值: 1.0 | > 0.0 |
-unit=<string> |
定义比例的长度单位: 天文单位,千米,米,厘米,毫米。默认值: au | au, km, m, cm, mm |
-lang=<string> |
选择输入语言。默认值: en-us | de-de, el-el, en-us, es-es, fi-fi, fr-fr, hi-hi, it-it, pl-pl, pt-pt, ro-ro, zh-hans |
-mime=<string> |
设置输出结果的MIME类型。 默认值: html | html, votable, text/csv, text |
-date=<string> |
设置日心经度的计算历元 (ISO 8601 格式)。 默认值: now | now, aaaa:mm:jj hh:mi:ss |
* 如果MIME类型为
VOTABLE, 则autoscale
参数将被强制设定为
0
。
HTTP访问结果由一张表格
和两张图片呈现, 返回格式为HTML,
VOTable/XML
或文本文件,具体通过MIME type
(-mime
参数设置)。
访问示例:
VOS4O可通过SOAP+WSDL+HTTP
协议提供Web服务,
使您可通过您的私有应用直接访问我们的服务。
clientID
array('from' => 'NomProjet', 'hostip'=>'')
scale
的输入参数以及其定义, 见表2.
参数 | 数据类型 | 定义 | 默认 | 参数值 |
---|---|---|---|---|
scale |
string | 设定太阳系的缩放比例 | 1:1 | X:Y 或a|d(<p>):x |
autoscale |
boolean | 当距离和直径相对于指定比例及单位过大或者过小时,自动更改其单位。 | true* | true | false |
scalefactor |
double | 若参数'scale'设置为X:Y或距离的形式时直径将会乘以给定值进行缩放,若参数'scale'设置为直径的形式时距离将会除以给定值进行缩放 | 1.0 | > 0.0 |
unit |
string | 比例尺长度单位 | au | au, km, m, cm, mm |
lang |
string | 输出语言 | en-us | de-de, el-el, en-us, es-es, fi-fi, fr-fr, hi-hi, it-it, pl-pl, pt-pt, ro-ro, zh-hans |
mime |
string | 输出结果的MIME类型 | html | html, votable, text/csv, text |
epoch |
string | 日心经度的计算历元(ISO 8601格式) | now | now, yyyy:mm:dd hh:mm:ss |
* 如果MIME的类型为VOTABLE,
则autoscale
参数将被强制设定为false
。
'scale'方法输出结果属性如下:
200
= 正常,
400
= 错误的请求,404
=
页面未找到,
500
= 内部错误。通过选定MIME type, 结果将以以下格式显示:
提供两种使用服务的方式: 通过编写客户端向VOS4O服务器发送请求并接受结果, 或者通过Web浏览器或数据传输软件,如curl or wget来访问服务器。 在这种情况下,您应在终端执行:
$> curl "<URL>"
或
$> wget "<URL>"
其中关于<URL>
的描述见
HTTP请求部分。
若需编写软件访问VOS4O服务,请选择一种语言以实现 SOAP通信协议。 我们在这里提供了一个用PHP编写的示例:
1/ 设置访问服务的输入文件:
// Client's ID: provide the name of your project or organisation
$from = 'MyName';
// Input parameters
$param = array('scale' => 'd(Terre)=1.0',
'autoscale' => true,
'scalefactor' => 1.0,
'unit' => 'm',
'axis' => 'log',
'lang' => 'zh-hans',
'mime' => 'html',
'epoch' => 'now');
2/ 设置SOAP参数,命名空间,以及WSDL服务的URI:
// Enables or disables the WSDL caching feature
ini_set('soap.wsdl_cache_enabled', 1);
// VOS4O name space
$namespace = 'https://ssp.imcce.fr/webservices/vos4o';
// VOS4O WSDL
$uriwsdl = $namespace.'/vos4o.wsdl';
3/ 实例化SoapClient对象,设置SOAP数据头信息,调用方法(在处理异常时):
try {
// Instantiate the client
$client = new SoapClient($uriwsdl, array('exceptions'=>1));
// SOAP header
$header = array('from'=>$from, 'hostip'=>'');
$client->__setSoapHeaders(array(
new SOAPHeader($namespace, 'clientID', $header)
));
// Call the resolver method
$response = $client->__soapCall('scale',array($param));
// Display the results
if ($param['mime'] == 'text') {
header("HTTP/1.0 ".$response->status);
header("Content-Type: text/plain");
$res = split(';', $response->result);
$nbr = count($res);
$newkey = array_keys($res);
for ($i=0; $i<$nbr; $i++) { echo $res[$newkey[$i]].PHP_EOL; };
} else if ($param['mime'] == 'html') {
header("HTTP/1.0 ".$response->status);
header("Content-Type: text/html");
echo $response->result;
} else {
header("HTTP/1.0 ".$response->status);
header("Content-Type: text/xml");
echo $response->result.PHP_EOL;
}
} catch (SoapFault $fault) {
trigger_error("SOAP Fault: {$fault->getTraceAsString()}
(faultcode: {$fault->faultcode},
faultstring: {$fault->faultstring})", E_USER_ERROR);
}
构思: B. Carry (OCA)
实现: J. Berthier (IMCCE)
网页设计: Y. Gominet (IMCCE)
翻译:
若想翻译成您的语言,无需犹豫,请立即联系我们。
此项科普服务对于任何非商业用途均不负有任何法律责任(参见法律声明)。 所生成的太阳系缩放比例图片遵循知识共享许可协议 BY-NC-SA 2.0 France license。
此项服务由 IMCCE 的 Service des éphémérides,和 Observatoire de la Côte d'Azur 尼斯天文台 Lagrange 实验室的 TOP 团队提供开发与维护,由 Observatoire de Paris,Centre National de la Recherche Scientifique (CNRS),与 Ministère de l'Education Nationale 提供技术与资金支持。
数据来源:
更多信息请参考 Introduction aux éphémérides astronomiques, Supplément explicatif à la Connaissance des temps, EDP Sciences, 1998.
图片来源:
字体由: