last day (16 days later) » 

8:24 PM
@HiggsBoson Nevermind the bounty. I made this chat room for more elaboration. Can you give a little more details about the parts that are not clear?
 
8:42 PM
What is a node actually in PSTricks' core? Why doesn't it behave like a named point?
 
 
3 hours later…
11:23 PM
@HiggsBoson Well I don't know exactly the lower level of PSTricks (I do for TikZ up to an extent). But let's start from the different user levels.
Supoose we have the user input level. That is when we give some coordinates and nodes. (TikZ closely immitates the PSTricks code by the way only much clenaer with its own great key value system tailored for this)
So when a node is entered with a precise coordinate the input is parsed and moved a level down. Now we are at a level where package internal organs are at work (but yet the pdf or PS level ) Here, everything is a little relative. First of all, there is a certain transformation matrix that is applied to all points received by the engine.
The quickest example is the scale=0.5. I hope you will agree that this is somewhat weird to be able to scale everything with one command. How can one possibly keep track of every point to be able to scale?
Well the answer is that everything is internally multiplied by 0.5 at the parser-lower level coordinator.
So after user input is parsed and before it is shipped to the lowest level (that is directly telling PDF compiler what to do) the points curves etc. are modified by the coordinate transfomation.
So every point (x,y) is actually put into this formula. Default matrix is the identitiy matrix and the default shift is (0,0).
Here when you use origin=(s1,s2) this precisely goes to the last part of the formula. So every point is added to this one.
However, if you have fixed a point before applying this transformation. They are also inverse transformed to get to their original point. Because we don't want the previous commands getting effected by something that happened after them.
So the other ones are either hard coded such that they are not affected or simply inverse transformed.
Coming to your problem \psnode[origin={A}]{A}(3);. First PSTricks receives the command that it should shift the coordinates by {A} and it does that. Then it says find the thing called {A} and make it the local origin of the node.
At this point PSTricks looks at the records and sees that its coordinates are fixed before the transformation or inverse transformed then it says OK in this new shifted coordinate system I have to go back and find where A was.
But this means the shift of the coordinate will not make any effect.
 

  last day (16 days later) »