Python和科学计算认证群组  - 讨论区

标题:再次测试语法高亮和缩排

2010年05月25日 星期二 06:55

# -*- coding: utf-8 -*-  
import   sys  
import   glob  
import   itertools  
import   numpy   as   np  
import   math  
from   scipy   import   optimize  
import   pylab   as   pl  
  
PAN_ORG   =   9275.0  
PAN_PITCH   =   0.018868  
TILT_ORG   =   795.0  
TILT_PITCH   =   0.019049  
  
class   Projection ( object ):  
     def   __init__ ( self ):  
         self . mt   =   np . eye ( 4 ,   dtype = np . float )  
         self . mx   =   np . eye ( 4 ,   dtype = np . float )  
         self . my   =   np . eye ( 4 ,   dtype = np . float )  
         self . mz   =   np . eye ( 4 ,   dtype = np . float )  
         self . v   =   np . zeros (( 4 ,   1 ))  
         self . v [ 3 ,   0 ]   =   1.0  
          
     def   GetPanTilt ( self ,   p ,   pos ):  
         m   =   self . mt  
         angles   =   np . array ( p [: 3 ])  
         s   =   np . sin ( angles   /   180   *   np . pi )  
         c   =   np . cos ( angles   /   180   *   np . pi )  
         x ,   y ,   z   =   p [ 3 ], p [ 4 ], p [ 5 ]  
         m [ 0 ,   3 ]   =   x  
         m [ 1 ,   3 ]   =   y  
         m [ 2 ,   3 ]   =   z  
          
         m   =   self . mx  
         m [ 1 , 1 ]   =   c [ 2 ]  
         m [ 1 , 2 ]   =   - s [ 2 ]  
         m [ 2 , 1 ]   =   s [ 2 ]  
         m [ 2 , 2 ]   =   c [ 2 ]  
  
         m   =   self . my  
         m [ 0 ,   0 ]   =   c [ 1 ]  
         m [ 0 ,   2 ]   =   s [ 1 ]  
         m [ 2 ,   0 ]   =   - s [ 1 ]  
         m [ 2 ,   2 ]   =   c [ 1 ]  
     
         m   =   self . mz  
         m [ 0 ,   0 ]   =   c [ 0 ]  
         m [ 0 ,   1 ]   =   - s [ 0 ]  
         m [ 1 ,   0 ]   =   s [ 0 ]  
         m [ 1 ,   1 ]   =   c [ 0 ]  
          
         m   =   np . dot ( self . mt ,   np . dot ( self . mz ,   np . dot ( self . my ,   self . mx )))  
         self . v [: 3 ,   0 ]   =   pos  
         tm   =   np . dot ( m ,   self . v )  
         tx ,   ty ,   tz   =   tm [ 0 , 0 ],   tm [ 1 , 0 ],   tm [ 2 ,   0 ]  
         xy   =   math . sqrt ( tx * tx + ty * ty )  
         pan   =   math . atan ( ty / tx ) * 180.0 / np . pi / PAN_PITCH + PAN_ORG  
         tilt   =   math . atan ( tz / xy ) * 180.0 / np . pi / TILT_PITCH   +   TILT_ORG  
         return   pan ,   tilt  

2010年05月25日 星期二 08:30

这个实用!不过,怎么用?

不会是自己改变字体颜色吧?

2010年05月25日 星期二 18:49

这是从我自己做的Code Library直接复制过来的,Code Library可以对代码进行高亮显示,并且支持富文本编辑器的粘贴,和代码发芽网的原理是一样的。

http://hyry.dip.jp/code.py?id=84

你看目前效果不太好,有些无用的空白。

 

2010年05月25日 星期二 19:51

我们稍后会全面加强富文本编辑器,支持各种代码的语法加亮。

2010年05月25日 星期二 19:55

热烈期待此功能。

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2024

    京ICP备05028076号