⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pdi_vis.il

📁 skill语言在Cadence平台二次开发中大量使用
💻 IL
📖 第 1 页 / 共 3 页
字号:
    ("Pin_Control"
      Pin_Control_Value=(Visibility_Control_Form->curValue)
      t
    ); end "Pin_Control"
    ("Via_Control"
      Via_Control_Value=(Visibility_Control_Form->curValue)
      t
    ); end "Via_Control"
    ("Etch_Control"
      Etch_Control_Value=(Visibility_Control_Form->curValue)
      t
    ); end "Etch_Control"
    ("EtchKO_Control"
      EtchKO_Control_Value=(Visibility_Control_Form->curValue)
      t
    ); end "EtchKO_Control"
    ("DRC_Control"
      DRC_Control_Value=(Visibility_Control_Form->curValue)
      t
    ); end "DRC_Control"
    ("TAssyControl"    
      TAssyControl_Value=(Visibility_Control_Form->curValue)
      t
    ); end "TAssyControl"
    ("BAssyControl"    
      BAssyControl_Value=(Visibility_Control_Form->curValue)
      t
    ); end "BAssyControl"
    ("TSilkControl"     
      TSilkControl_Value=(Visibility_Control_Form->curValue) 
      t 
    ); end "TSilkControl" 
    ("BSilkControl"     
      BSilkControl_Value=(Visibility_Control_Form->curValue) 
      t 
    ); end "BSilkControl" 
    ("TMaskControl"     
      TMaskControl_Value=(Visibility_Control_Form->curValue) 
      t 
    ); end "TMaskControl" 
    ("BMaskControl"     
      BMaskControl_Value=(Visibility_Control_Form->curValue) 
      t 
    ); end "BMaskControl" 
    ("TPasteControl"     
      TPasteControl_Value=(Visibility_Control_Form->curValue) 
      t 
    ); end "TPasteControl" 
    ("BPasteControl"     
      BPasteControl_Value=(Visibility_Control_Form->curValue) 
      t 
    ); end "BPasteControl" 
    ("TPgridControl"     
      TPgridControl_Value=(Visibility_Control_Form->curValue) 
      t 
    ); end "TPgridControl" 
    ("BPgridControl"     
      BPgridControl_Value=(Visibility_Control_Form->curValue) 
      t 
    ); end "BPgridControl" 
    ("KOControl"
      KOControl_Value=(Visibility_Control_Form->curValue)
      t  
    ); end "KOControl"
    ("LKOControl"
      LKOControl_Value=(Visibility_Control_Form->curValue)
      t  
    ); end "LKOControl"
  ); end case Visibility_Control_Form->curField
); end defun pdiAction

;===============================================;
;                                               ;
; Generate plot files and send them out.	;
;                                               ;
;===============================================;
(defun pdiPlotScreen ()
  (axlShell "create plot screen_plot" )
  (axlShell "run allegro_plot screen_plot" )
  (axlShell "shell rm screen_plot.{plt,ctl}" )
); end defun pdiPlotScreen

;===============================================;
;                                               ;
; Define the Help routine                       ;
;                                               ;
;===============================================;
(defun pdiVisHelp ()
  pdiHelpFile=outfile("pdiVis.help" "w")
    (fprintf pdiHelpFile "     /\\\n")
    (fprintf pdiHelpFile "    /\\/\\\n")
    (fprintf pdiHelpFile "   /\\/\\/\\\n")
    (fprintf pdiHelpFile "  /\\/\\/\\/\\\n")
    (fprintf pdiHelpFile "  ---------                Praegitzer Design, Inc.  -  The Fine Line in Design\n")
    (fprintf pdiHelpFile "==============================================================================\n")
    (fprintf pdiHelpFile "                   pdi_vis.il - Display Control Window V2.1\n")
    (fprintf pdiHelpFile "==============================================================================\n")
    (fprintf pdiHelpFile "This routine lets the user easily select what to see on the screen.  It will\n")
    (fprintf pdiHelpFile "selectively show pads, vias, etch, DRCs, and keepouts for any ETCH subclass \n")
    (fprintf pdiHelpFile "defined.  It will also show non-etch subclasses such as the top silkscreen\n")
    (fprintf pdiHelpFile "without being required to turn them all on individually.\n")
    (fprintf pdiHelpFile "==============================================================================\n")
    (fprintf pdiHelpFile "            Buttons in the 'Etch Features' and 'Etch Layers' boxes\n")
    (fprintf pdiHelpFile "------------------------------------------------------------------------------\n")
    (fprintf pdiHelpFile "When one of these buttons is pressed (darker than the background) with a layer\n")
    (fprintf pdiHelpFile "and 'Refresh' is pressed, the entities associated with the button will display\n")
    (fprintf pdiHelpFile "on the screen.  The 'P' button is for pads, the 'V' button is for vias, the\n")
    (fprintf pdiHelpFile "'E' button is for etch, the 'KO' button is for Keepout and Keepin areas, the\n")
    (fprintf pdiHelpFile "'DRC' button is for the DRC subclasses.  The 'Layers' box will have layers\n")
    (fprintf pdiHelpFile "currently defined shown, unless the form was showing when layers were added.\n")
    (fprintf pdiHelpFile "If this is the case, quitting then restarting will show the new layers.\n")
    (fprintf pdiHelpFile "==============================================================================\n")
    (fprintf pdiHelpFile "                         Buttons in the 'Non-Etch' box\n")
    (fprintf pdiHelpFile "------------------------------------------------------------------------------\n")
    (fprintf pdiHelpFile "These are other entities that are useful to turn on and off during design.\n")
    (fprintf pdiHelpFile "When one of these buttons are pressed the selected layers will be displayed\n")
    (fprintf pdiHelpFile "after 'Refresh' is pressed.\n")
    (fprintf pdiHelpFile "   'TAsy' is top assembly         'BAsy' is bottom assembly\n")
    (fprintf pdiHelpFile "   'TSlk' is top silkscreen       'BSlk' is bottom silkscreen\n")
    (fprintf pdiHelpFile "   'TMsk' is top soldermask       'BMsk' is bottom soldermask\n")
    (fprintf pdiHelpFile "   'TPst' is top solderpaste      'BPst' is bottom solderpaste\n")
    (fprintf pdiHelpFile "   'TPgr' is top place grid       'BPgr' is bottom place grid\n")
    (fprintf pdiHelpFile "Press 'Plot' to generate a pen plot of the screen.  Exit by pressing 'Quit.'\n")
    (fprintf pdiHelpFile "This closes and deletes the form, but DOES NOT refresh the screen.\n")
    (fprintf pdiHelpFile "==============================================================================\n")
    (fprintf pdiHelpFile "This program was adapted from a routine originally written by:\n")
    (fprintf pdiHelpFile "                    David J. Scheuring\n")
    (fprintf pdiHelpFile "                    Sr. Applications Eng.\n")
    (fprintf pdiHelpFile "                    Cadence Design Systems\n")
    (fprintf pdiHelpFile "                    Dec. 8, 1994\n")
    (fprintf pdiHelpFile "------------------------------------------------------------------------------\n")
    (fprintf pdiHelpFile "Modifications to add non etch layers and re-format the form were written by:\n")
    (fprintf pdiHelpFile "                    George H. Patrick III\n")
    (fprintf pdiHelpFile "                    Sr. PCB Designer\n")
    (fprintf pdiHelpFile "                    Praegitzer Design, Inc.\n")
    (fprintf pdiHelpFile "                    George.Patrick@pii.com\n")
    (fprintf pdiHelpFile "                    gpatrick@aracnet.com\n")
    (fprintf pdiHelpFile "                    03JUN96\n")
    (fprintf pdiHelpFile "==============================================================================\n")
    (fprintf pdiHelpFile "NOTE:  This has been tested extensively in version 11 of Allegro.  Although \n")   
    (fprintf pdiHelpFile "       it may work under other versions it was not written for compatability.\n") 
    (fprintf pdiHelpFile "       No responsibility is assumed by Praegitzer Design, it's owners, it's\n") 
    (fprintf pdiHelpFile "       employees, or the writer for any problems introduced by use of this\n") 
    (fprintf pdiHelpFile "       program.\n") 
    (fprintf pdiHelpFile "==============================================================================\n")
    (fprintf pdiHelpFile "              Comments and suggestions are always encouraged ;->\n")
  close(pdiHelpFile)
  axlUIViewFileCreate( "pdiVis.help" "Visibility - Help" nil)
  deleteFile( "pdiVis.help" )
) ; end defun pdiVisHelp
 
;===============================================;
;						; 
; Define the Update routine			;
;						;
;===============================================;
(defun pdiVisUpdate ()
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE KEEPIN/paramLayer:ALL" ))
    (Going_On->visible=t)
    axlSetParam(Going_On)
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE KEEPIN/paramLayer:ALL" ))
    (Going_Off->visible=nil)
    axlSetParam(Going_Off)
  ;------------------------------;
  ; Look at the "TAsy" button    ;
  ;------------------------------;
  (if TAssyControl_Value == t then
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:ASSEMBLY_TOP"))
    (Going_On->visible=t)
    axlSetParam(Going_On)
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:REF DES/paramLayer:ASSEMBLY_TOP")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
  else
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:ASSEMBLY_TOP")) 
    (Going_Off->visible=nil) 
    axlSetParam(Going_Off) 
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:REF DES/paramLayer:ASSEMBLY_TOP"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)
  ); end TAssyControl_Value == t
  ;------------------------------;
  ; Look at the "BAsy" button    ;
  ;------------------------------;
  (if BAssyControl_Value == t then
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:ASSEMBLY_BOTTOM")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:REF DES/paramLayer:ASSEMBLY_BOTTOM")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
  else   
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:ASSEMBLY_BOTTOM"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)   
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:REF DES/paramLayer:ASSEMBLY_BOTTOM"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)
  ); end BAssyControl_Value == t 
  ;------------------------------;
  ; Look at the "TSlk" button    ;
  ;------------------------------;
  (if TSilkControl_Value == t then
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:BOARD GEOMETRY/paramLayer:SILKSCREEN_TOP")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:SILKSCREEN_TOP")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:REF DES/paramLayer:SILKSCREEN_TOP")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
  else   
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:BOARD GEOMETRY/paramLayer:SILKSCREEN_TOP"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)   
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:SILKSCREEN_TOP"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)   
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:REF DES/paramLayer:SILKSCREEN_TOP"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)
  ); end TSilkControl_Value == t 
  ;------------------------------;
  ; Look at the "BSlk" button    ;
  ;------------------------------;
  (if BSilkControl_Value == t then
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:BOARD GEOMETRY/paramLayer:SILKSCREEN_BOTTOM")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:SILKSCREEN_BOTTOM")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:REF DES/paramLayer:SILKSCREEN_BOTTOM")) 
    (Going_On->visible=t) 
    axlSetParam(Going_On) 
  else   
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:BOARD GEOMETRY/paramLayer:SILKSCREEN_BOTTOM"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)   
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:SILKSCREEN_BOTTOM"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)   
    Going_Off=axlGetParam(sprintf(String "paramLayerGroup:REF DES/paramLayer:SILKSCREEN_BOTTOM"))  
    (Going_Off->visible=nil)  
    axlSetParam(Going_Off)
  ); end BSilkControl_Value == t 
  ;------------------------------;
  ; Look at the "TMsk" button    ;
  ;------------------------------;
  (if TMaskControl_Value == t then
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:BOARD GEOMETRY/paramLayer:SOLDERMASK_TOP"))
    (Going_On->visible=t)                                                                                    
    axlSetParam(Going_On)
    Going_On=axlGetParam(sprintf(String "paramLayerGroup:PACKAGE GEOMETRY/paramLayer:SOLDERMASK_TOP"))

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -