keyboard only? scripting

I am a 14 year old physicaly disabled physics geek who wants to use blender do do high polly 3d graphs of brownian motion. I tried using python 3d and that did not suport the high triangle count that I require. I am unable to use the mouse but I can do some stuf with keys(there is a way to controll the mouse with the keyboard but it does not support the midle mouse button). I am also curios about scripting support (what would be perfect is have a python function to make the next frame. and render it so I could just play back a slide show and would not have to install blender on computers for a demonstration.) (with python 3d I was going to take screenshots:) but of couse it was too slow)

so does blender even support what I am trying to do and were would I find docs?

I’m not quite sure what you’re looking for, but if the only problem is that your current mouse emulation cannot handle 3 mouse buttons, you could overcome it by emulating it using the alt-key. Blender supports that feature for those without 3-button mouses and that might do the trick for u too.

If holding down multiple hotkeys simultaneously is difficult for you, you could try out a “keyboard scripting”-application called AutoHotkey. I think with that program you should be able to, for example, make the alt-key a toggle button. Haven’t tried myself, but I’m pretty sure it’s possible. But like I said, I’m not sure what you were asking for so that might not be what you want. In either case, Blender have extensive Python capabilities so if what you are looking for does not exist, it should not be a problem to build it using scripts.

You can emulate a 3 button mouse with alt key as noted.

Not quite positive what you want to accomplish you can render as a series of png files, the pngs could be loaded sequentially with any image browser. (Ie windows included image viewer works fine for that) or probably import into open office as a slide show etc.

LetterRip

I am basicaly just looking for the scripting docs and a way to print out a list of hotkeys:)

ah,

api is here

http://www.blender3d.org/cms/Documentation.628.0.html

(scroll down to python api)

hotkeys - see your help menu - hotkeys and mouse reference. (hmm not sure if printable? there are references that have everything but not sure where they are offhand…)

Here you go - might be slightly out of date…

http://blender.excellentwhale.com/

LetterRip

There is a hotkey map (2 png pictures) available here:
http://mediawiki.blender.org/index.php/Reference/Hotkey_Map
(direct links to the two pictures: here and here)

And a hotkey list sorted by mode: http://mediawiki.blender.org/index.php/User:Igor/HotKeys

thankyou the images were great ok one more question for this thread.

how do I zoom the text editor

As far as I know, the only method is changing the ‘Screen 12’ combobox at the bottom of the text window to ‘Screen 15’ - I presume this changes the size font from 12 to 15.

Well, the text editor can’t really be zoomed, per se - If you need to write apython script you might be better served to do it an a text editor that supports accesibility features.

Blender’s built in script editor is fairly limited in terms of zooming though I think that you can select a larger font size in the panel header. (Don’t have a copy with me to check)

the hello world version :slight_smile: now all I need to do is the hard coding and figue out how to render via script

import Blender
from Blender.BGL import *
from Blender import Draw
from Blender.Scene import Render
R = G = B = 0
A = 1
p1x= 30
p2x= 35
p3x= 40
p1y= 0
p2y= 10
p3y= 0
vx= 2
vy= 2

def show_win():
glClearColor(R,G,B,A) # define color used to clear buffers
glClear(GL_COLOR_BUFFER_BIT) # use it to clear the color buffer
glColor3f(0.35,0.18,0.92) # define default color
glBegin(GL_POLYGON) # begin a vertex data list
glVertex2i(p1x, p1y)
glVertex2i(p2x, p2y)
glVertex2i(p3x, p3y)
glEnd() # close this list

def ev(evt, val): # event callback for Draw.Register()
global p1x, p2x, p3x, p1y, p2y, p3y, vx, vy
if evt == Draw.QKEY:
Draw.Exit()
p1x+=vx
p2x+=vx
p3x+=vx
p1y+=vy
p2y+=vy
p3y+=vy
if p3x > 70:
vx=0-vx
if p1x < 0:
vx=0-vx
if p1y < 0:
vy=0-vy
if p2y > 70:
vy=0-vy
Draw.Redraw(1) # make changes visible.

Draw.Register(show_win, ev, None) # start the main loop

glClearColor(R,G,B,A) # define color used to clear buffers
glClear(GL_COLOR_BUFFER_BIT) # use it to clear the color buffer
glColor3f(0.35,0.18,0.92) # define default color
glBegin(GL_POLYGON) # begin a vertex data list
glVertex2i(p1x, p1y)
glVertex2i(p2x, p2y)
glVertex2i(p3x, p3y)
glEnd() # close this list

The GL stuff is just if you want to draw additional interface elements etc.

If you want to work with mesh, use Object with Mesh or NMesh modules.

Easiest way to learn is to have a look at existing scripts, see the .scripts folder in your Blender install.

LetterRip

ok i’ll work on it tuesday I need to do homework now. all I saw in the scripts directory were import export scripts wich were all rather long so I don’t know about their usefullnes as examples.