#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    May 2013
    Posts
    6
    Rep Power
    0

    Variable width stroke? paper.js


    Hi, I'm relatively new to Javascript and programming. I'm using a vector drawing library called Paper.js and I'm a little unclear on what aspects of this question might be specific to that library.

    But using the library I'm able to create a Path object on an html5 canvas. And I can give the stroke of that path a color and a width.

    Does anyone know if there is a way, using this library, to give a path a variable width stroke? So it starts out with one width and either widens or tapers?

    If not, does anyone know how to do this with a different library? Such as Rapheal.js or Processing.js?

    And I apologize for not knowing this, but while the Path object, I think, is specific to Paper.js, it must be using some more generic object that is part of the core Javascript language. If I was using the core language to draw vector graphics to the screen, would there be an easy way to give a path a variable width stroke?

    The only way that I can think of doing it is to basically create my own Path-Prime object that is an array of Path objects. Basically recreate the Path class using Path objects as the building block. Since each Path has its own strokeWidth I should be able to manuall approximate a variable width stroke along the Path-Prime. But that's going to be messy... I'd love to find a cleaner solution.

    Thanks for any help.
  2. #2
  3. A Not To Shabby Code Smurf
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Aug 2008
    Posts
    1,110
    Rep Power
    119
  4. #3
  5. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    May 2013
    Posts
    6
    Rep Power
    0
    Hey, I appreciate the reply; though I think I must not have been clear in
    the way I phrased my question.

    I know how to set the strokeWidth for a path. But what I'm trying to do
    is make the strokeWidth vary along the path. So, instead of a stroke having
    a width of X, I'd like to have it start at X and taper (or widen) to Y. Not
    as an animation, mind you, but as a static characteristic.

    To exemplify,
    Here is what I know how to do...
    Code:
    var path = new Path(); // this is a vector path
    path.strokeWidth = 1; // give this path a pixel width of 1 that is constant for the entire length of the path
    here is the kind of thing I would like to do,
    mind you, these properties don't actually exist.
    Code:
    var path = new Path(); // this is a vector path
    path.strokeWidthStart = 1; // this says the path starts with a width of 1 pixels
    path.strokeWidthEnd = 5; // and widens uniformly until it reaches the end of the path and has a width of 5 pixels
    I read the link through again (I had read those tutorials before) just to
    double-check that it didn't address the question - am
    I missing something in there? Does it explain how to pull off
    what I'm trying to do?

    Originally Posted by web_loone08
    [/url]
  6. #4
  7. A Not To Shabby Code Smurf
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Aug 2008
    Posts
    1,110
    Rep Power
    119
    I think..., from what I have skimmed over; if you study the documentation, then you will be able to come up with a way, to make the path width fluctuate; from the start of your path to the end of your path.
  8. #5
  9. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    May 2013
    Posts
    6
    Rep Power
    0
    Um, okay? I guess I'm here because I've already done that...I mean maybe I'm an idiot, but I've tried quite a few things.

    I looked at using CompoundPaths which is a way to sort of link paths together, but they all end up taking the style of the last path in the link.

    I tried finding a way to set the style of any of the subcomponents of a path. Segments, curves, even points, but none of these actually have style properties. The lowest level object that can be displayed (and thus has style) seems to be a path and as far as I can tell any style setting applies to the whole of the path.

    So after experimenting with several of the simpler/obvious things to try, I thought I'd come here...

    Oh! And I've spent at least two hours googling... and I've found people asking this same question but never any answers. I found one or two people, "I don't think you can do this." So, the truth is, despite my newness, I suspect that it's not just me missing something obvious. And maybe it's true that it can't be done... at least without a lot of effort...



    Originally Posted by web_loone08
    I think..., from what I have skimmed over; if you study the documentation, then you will be able to come up with a way, to make the path width fluctuate; from the start of your path to the end of your path.
  10. #6
  11. A Not To Shabby Code Smurf
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Aug 2008
    Posts
    1,110
    Rep Power
    119
    I am aware that you came here looking for help with this, but given this is a third party plugin (that has documentation with it); this question is better fitted for the developer of the plugin. Furthermore..., it is possible; that you may not be able to do this according to the author's documentation, but as a developer..., you sometimes have to think outside the box and find a way to make something work for you (in the way you want it to). And... this is known as a "hack". So many people and ideas come up with the notion; that there are definitive lines/barriers for some type of given: code, program, etc., but if your good enough and/or patient enough; you can find a way to hack around those physically or conceptually/theologically built-in barriers and make something do..., what you want it to do. So you have a choice, give up and say it cannot be done or bend the parameters of your coding imagination (given you have the knowledge to do so).

    - Good Luck
  12. #7
  13. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    May 2013
    Posts
    6
    Rep Power
    0

    Post


    Lol, you're kind of funny. Why would you assume I need you
    to define hack for me? Patronizing and silly.

    And just because I'm newish to JavaScript and programming,
    doesn't mean I've never done it. I mean, dude, I have an MS
    in Computer Science from arguably the best school in the
    world for CS; it's in AI (that stands for 'Artifiical Intelligence' -
    it's a subfield in CS dedicated to abstract problem solving)
    so I don't really consider myself a systems guy.

    Sure, I worked for a few years coding C++ in
    the 90s but I quit that to get into TV writing and now I'm
    picking it up again as a hobby. So I say newish because
    I know enough to respect what my peers who made it their
    career have accomplished.

    To be honest, I think what happened is that you didn't read
    the question carefully. You fired off a non-answer. And when
    I politely pointed this out, you got defensive. But no worries,
    just try to be less patronizing in the future. And maybe more helpful.

    In any event, as I mentioned in my original post, I have a
    solution, it's just a bit resource heavy. But I went ahead
    and implemented it and thought I'd outline it here in case
    anyone in the future might benefit.

    The key is to recognize that Path objects have their own style,
    so you need to break a Path down into it's component segments
    and then assign those segments their own encapsulating path.

    You won't be able to manipulate the final frankenstein path but
    you can at least achieve a tapering strokeWidth for a static vector.

    Here's some pseudocode:

    Code:
    var aPath = new Path.Circle();
    
    //Flatten takes a curve and divdies into a large number of
    //segments where each point is no more than the argument's
    //pixel distance apart... in this case, 5 pixels.
    
    aPath.flatten(5);
    
    //Now you can pull an array of the segments out of the path;
    var arrayOfSegments = aPath.segments;
    
    //iterate over these segments and move them into their own
    //path objects...
    var arrayOfPaths = [];
    for (var i = 0; i < arrayOfSegments.length; i++) {
      arrayOfNewPaths[i] = new Path();
      
     //add the first segment to the first Path in the array and so on
     arrayOfNewPaths[i].add(arrayOfSegments[i]);
    }
    
    //So when this is done you've taken an array of segments and
    //encapsulated each one with it's own path. Since you can
    //change the style of a Path, now you just iterate over
    //this array and adjust the strokewidth as you go...
    
    for (var j = 0; j < arrayOfPaths.length; j++) {
      arrayOfPaths[j].strokeColor = 'black';
      
    //Each subsequent segment on the path will have a slightly 
    //larger strokewidth
      arrayOfPaths[j].strokeWidth = j;
    }

    Originally Posted by web_loone08
    I am aware that you came here looking for help with this, but given this is a third party plugin (that has documentation with it); this question is better fitted for the developer of the plugin. Furthermore..., it is possible; that you may not be able to do this according to the author's documentation, but as a developer..., you sometimes have to think outside the box and find a way to make something work for you (in the way you want it to). And... this is known as a "hack". So many people and ideas come up with the notion; that there are definitive lines/barriers for some type of given: code, program, etc., but if your good enough and/or patient enough; you can find a way to hack around those physically or conceptually/theologically built-in barriers and make something do..., what you want it to do. So you have a choice, give up and say it cannot be done or bend the parameters of your coding imagination (given you have the knowledge to do so).

    - Good Luck
  14. #8
  15. A Not To Shabby Code Smurf
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Aug 2008
    Posts
    1,110
    Rep Power
    119
    Hahaha... your reply is so absurd, arrogant, and rude; I am almost not sure how to address your comments, but let's try... shall we.

    Why would you assume I need you
    to define hack for me? Patronizing and silly.
    Well... 1.) You obviously either do not understand the documentation or do not understand how to apply it. 2.) You are new to the forum, so I usually assume, if someone is new and has a question; they are a trying to learn a code, that a particular forum, was created to assist with. 3.) I was not patronizing you, I was just trying to assist you, but as I assumed; you wanted someone to write the code for you (evidence: the code you found and used; yet did not contribute to, in any way). And... I was not about to write any code for you. If you had posted an effort, on your part, then I would have assisted further.

    And just because I'm newish to JavaScript and programming,
    doesn't mean I've never done it. I mean, dude, I have an MS
    in Computer Science from arguably the best school in the
    world for CS; it's in AI (that stands for 'Artifiical Intelligence' -
    it's a subfield in CS dedicated to abstract problem solving)
    so I don't really consider myself a systems guy.

    Sure, I worked for a few years coding C++ in
    the 90s but I quit that to get into TV writing and now I'm
    picking it up again as a hobby. So I say newish because
    I know enough to respect what my peers who made it their
    career have accomplished.
    REALLY!!! WOW!!! - So are you here for a job or help with code, because your resume is not going to impress me or anyone else here. And... if your looking for a job, you posted your resume in the wrong forum.

    To be honest, I think what happened is that you didn't read
    the question carefully. You fired off a non-answer. And when
    I politely pointed this out, you got defensive. But no worries,
    just try to be less patronizing in the future. And maybe more helpful.
    I read your first post and answered based on your actual question. I was not defensive, at all, in my second post; at this point... I really feel your the one, on the defense. I simply told you that you would be best helped by the developer of this plug-in. And... just a little enlightenment about questions posted on this forum; in relation to third party plug-ins; they rarely ever get answered. So you can consider yourself lucky, that I made an effort to glance over the documentation and try to point you in the right direction. Instead, what you really wanted; was someone to write the code for you, because your "computer science" degree (from your prestigious college); did not give you the ability to conceive the documentation or common sense to contact the plug-in developer, little alone... contrive a hack, for the plug-in's code (that you say you know something about). And... you need not worry about my "patronizing in the future"; because I will not be assisting you (in any capacity) in the future (due to your: rudeness, arrogance, and just your general lack of a decent attitude, in this post).

    But, you know what... I will end this rebuttal, on a good note; I am glad you got it to work out for you.
    Last edited by web_loone08; May 5th, 2013 at 09:17 PM.
  16. #9
  17. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    May 2013
    Posts
    6
    Rep Power
    0
    Originally Posted by web_loone08

    Well... 1.) You obviously either do not understand the documentation or do not understand how to apply it.
    What are you talking about? As I said before, why in the world would I be posting here if I hadn't read the documentation? You linked to a page that is tangentially associated with my question, but does not answer it. And if it did, then I wouldn't be here in the first place.

    You don't understand what's being asked if you think the documentation answers it. This is the the third I've told you that. I also told you that this question pops up all over the net with most people saying, "It can't be done." I still think it may
    be possible, but understanding the documentation fully doesn't even come close to solving the problem.

    This kind of question is *precisely* what a forum like this is for... I've been banging my head against this problem for a while, so it's time to see if anyone else has come up with something clever.

    Why don't you reply to every question in the forum by linking to the Javascript Core API? 'Cause that's the equivalent of what you did here, lol.

    Originally Posted by web_loone08
    2.) You are new to the forum, so I usually assume, if someone is new and has a question; they are a trying to learn a code, that a particular forum, was created to assist with.
    Uh, okay? How is this relevant? This describes me well. I was looking for someone who might know something about the Core API that would me see this from a different angle. That's why I wrote that stuff about how this library is obviously using more generic objects to build it's API and maybe someone can point me to some aspects of the core that would help me.

    This, you did not do. You linked to the documentation and that begin to take an attitude that implied I hadn't read it, presumably out of laziness. This was patronizing and obnoxious.


    Originally Posted by web_loone08
    3.) I was not patronizing you, I was just trying to assist you, but as I assumed; you wanted someone to write the code for you (evidence: the code you found and used; yet did not contribute to, in any way). And... I was not about to write any code for you.
    Again, this literally makes no sense. What code I found and used? Do you mean the library? Do you mean my question should come with a contribution? Do you not understand that the code at the end of the thread is mine? You are so confused, I don't even know how to set you straight.

    Who asked you to write code? The only thing you were asked to do was not to pretend like you have an answer when you don't. Just stop being so obnoxious, dude. It shouldn't be that hard.


    Originally Posted by web_loone08
    REALLY!!! WOW!!! - So are you here for a job or help with code, because your resume is not going to impress me or anyone else here. And... if your looking for a job, you posted your resume in the wrong forum.
    I was just hoping to impress you into being less obnoxious and patronizing. It didn't work.

    I am starting to question whether you have read any of my posts. You clearly don't understand something; maybe my writing is unclear? Surely, you can't still think that your link to that documentation answers the question?

    Originally Posted by web_loone08
    I read your first post and answered based on your actual question. I was not defensive, at all, in my second post; at this point... I really feel your the one, on the defense. I simply told you that you would be best helped by the developer of this plug-in. And... just a little enlightenment about questions posted on this forum; in relation to third party plug-ins; they rarely ever get answered. So you can consider yourself lucky, that I made an effort to glance over the documentation and try to point you in the right direction.
    a) You didn't come close to answering the question. I'm not sure
    you even understand it.

    b) Maybe I got defensive when after I politely pointed out that I'm way beyond you pointing to a random documentation page, you then defined hack and gave me a lecture on working harder. Lol, yes, I will admit it. That made me defensive and aggressive. You have my apologies.

    I still think you didn't read carefully, threw out a non-answer, and then thought you could bully your way out of it by implying that I must just be too lazy to understand.

    c) I assure you, there is no part of your involvement in this thread that makes me feel lucky. And you should probably take a hard look at your other threads, you're not contributing with the value that you think you are.

    Originally Posted by web_loone08
    Instead, what you really wanted; was someone to write the code for you,
    Again, what are you talking about? I write all of my own code. Where in the world do you get this idea?

    Did you even read the question. In the original post, I say that I've already implemented a solution that's quite messy and resource heavy and that I'm looking for something more elegant. I was hoping that maybe there's a basic characteristic of some of the low-level objects that might give me some insight into a more elegant approach.

    And to be nice, I went ahead and posted my solution (the one I mentioned in the original post, the one that is messy and resource-intensive) just in case somebody might find that helpful. I'm seriously starting to think this might be a language barrier issue. Maybe my writing is unclear? Maybe you're not reading very carefully? Are you ESL, by any chance.

    Originally Posted by web_loone08
    But, you know what... I will end this rebuttal, on a good note; I am glad you got it to work out for you.
    It didn't work out. See above. Or don't. I'd be shocked if you suddenly started understanding the question or the solution, to be honest.

    Look, it's okay that you didn't have anything to contribute to the question. That's fine. But why did you reply then? What possessed you to link to documentation when you didn't understand what was being asked?

    And then when I pointed out that you misunderstood the question and that, of course, I've read the documentation, what possessed you to start lecturing me on trying harder and being less lazy? It literally makes no sense.

    I hope you'll take away from this some much needed humility and a reminder that this isn't race. Take your time when you read a question. Don't answer if you don't know. It only ends up making you look foolish. And thank god, I actually knew what I was doing. If I was less experienced, how many hours would I have wasted following your non-answers? I don't even want to think about it.
  18. #10
  19. A Not To Shabby Code Smurf
    Devshed Beginner (1000 - 1499 posts)

    Join Date
    Aug 2008
    Posts
    1,110
    Rep Power
    119
    Wow, really... you think that long post did anything to help your case. The point still remains the same; I understand, that if you did not have to have someone else write, that code for you or you was the expert coder; that you say you are, you would not have needed any assistance from a forum. Obviously, you have not made me look as foolish, as you think. What most likely happened, was you posted your question on some other forum and someone felt sorry for you and gave you the answer to your question. It worked, but not as you wanted it to. So you posted the notion, that you have made an original adaption of a plugin's code (being your a newbie to JavaScript, we all know; that so possible "lmao"), that it is slow and you need someone to assist you further. Yet, in your original post; you did not post any code. Which you should have done, if you wanted anyone; to take a stab, at what you needed help with. Yes, if you study the documentation, as I suggested; you would see that there is a way around the problem you were having (if you knew anything about hacking an API/Plugin; with it's global framework and I am guessing you didn't - which was the point of me saying; it can be hacked, if the author documentation is unavailable, to do what you were wanting); you just had to implement it, in the right fashion. This forum is here to help people who are interested in learning JavaScript or who need assistance with code; that they (themselves) have already created. It is not here to help you adapt a plugins code and make it work, the way you feel it should. That is what the developer and/or the developers forum (if they have one) is there for. What I did was take the time to point out to you that there was documentation and that's all I needed to do. I am not obligated to do anything for you or any one else. I just do it to help people out; I am not paid to do so. And... if anyone has a language barrier, I would say it was you and most likely it is a social disorder. You just make yourself look more and more unintelligent. I do regret helping a lowly individual like yourself, because people like you make other people not want to help each other. Because instead of being appreciative, you rant and rave about this, that and the other; in general... you just cause chaos on forums, as you have nothing better to do (people like you lead small lives). And... you are calling me lazy; if your the expert coder, who has such a lavish history, in different code environments; why did you not come up with something so awesome, it would have blown away; what you were trying to do, in the first place? It's because you cannot do it; that's why you had to come here for help (either because you do not know what to do or you are flat out lazy yourself). You do not worry, about how I help people; that is none of your concern. As I said before; I will not be helping you in anyway again. I tell you what I do presume; better yet... I will tell you what I know... you will not last on this forum long or any other; with you ignorant and hateful demeanor. No one will want to help you and you will probably keep saying enough rudely blasphemous putrid; that you will eventually get yourself banned. Furthermore, I would venture to guess; that you have troubles in other aspects of your life and just not on forums. Also, I was trying to motivate you; about trying to press the envelope; not give you a lecture. If anyone, needs some humility; it would be you. You think you know it all; but as you say, what you were trying to do... "It didn't work out" and thus far; being the intellectual giant (that you think you are); really is not working out for ya... huh? So... how you feeling now Mr. AI; lmao; what a joke you are; not to mention a POS.
    Last edited by web_loone08; May 5th, 2013 at 11:12 PM.
  20. #11
  21. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    May 2013
    Posts
    6
    Rep Power
    0
    Oh my, this just took a turn toward the absurd. Wow. I knew
    you were a bit off, but it wasn't until this rant that I realized
    just how much.

    And now it's clear that English is your second language. I don't
    mean that as an insult; but it helps inform your difficulty in
    understanding my intent. My writing isn't the clearest for a
    native speaker so I can only imagine it's even less readable to
    an ESL.

    Anyway, I am never one to punch down. So, I'm going to drop
    the insults and just explain it again. I'll wrap this up quick.

    I'm not sure why you're obsessed with code. My question isn't
    the kind of question that just needs a snippet. It's not the "I
    have a bug" variety. And I never claimed to be an expert. Far
    from it. You seem to think there are only two choices: expert
    and idiot. I am trying to suggest that maybe this is a bad
    assumption.

    I'm not going to entertain your elaborate theory about who
    wrote the code other than to say that now I *know* you're
    not reading carefully because if you were, you'd see that
    the code I posted is absolutely trivial. There's not even an
    intermediate concept in that code. Anyone could write that.

    The problem isn't that the code is slow. It literally doesn't
    solve the problem. It just creates the illusion that that it
    did.

    The issue with it is that by fragmenting the path into a series
    of segments and then wrapping them with individuals path
    objects, then conjoining those paths, you create a kind of
    linked list of path objects. A frankenpath. But the whole point
    of the vector library is to treat things as a single path. So with
    that solution, I'm able to mimic a tapering stroke width, but
    I've given up all the benefits of the library.

    Do you see?

    So I was hoping someone who knew a lot about the core API
    of JS could perhaps point me in the right direction of a primitive.
    For example, I think one of the base classes that most of JS
    inherits is the Item object. Maybe there's an arcane aspect of
    Item's that would help me... I don't know, that's why I'm here.
    To see if any experts knew.

    I don't know what to tell you about your claim that it can be
    done by looking at the documentation. You're simply wrong. You
    either don't understand the task. Or you don't understand why
    it's difficult. I'm not trying to be rude, but that's the truth.

    I genuinely believe you saw me asking about changing
    strokeWidth and assumed I meant how to do that in the
    most simple and obvious way? I think you read my question
    as "How do I set the strokeWidth?" If that was my question,
    then the link you posted would be a perfect answer. I hope
    by now, you've figured out that this was not my question.


    Originally Posted by web_loone08
    Wow, really... you think that long post did anything to help your case. The point still remains the same; I understand, that if you did not have to have someone else write, that code for you or you was the expert coder; that you say you are, you would not have needed any assistance from a forum. Obviously, you have not made me look as foolish, as you think. What most likely happened, was you posted your question on some other forum and someone felt sorry for you and gave you the answer to your question. It worked, but not as you wanted it to. So you posted the notion, that you have made an original adaption of a plugin's code (being your a newbie to JavaScript, we all know; that so possible "lmao"), that it is slow and you need someone to assist you further. Yet, in your original post; you did not post any code. Which you should have done, if you wanted anyone; to take a stab, at what you needed help with. Yes, if you study the documentation, as I suggested; you would see that there is a way around the problem you were having (if you knew anything about hacking an API/Plugin; with it's global framework and I am guessing you didn't - which was the point of me saying; it can be hacked, if the author documentation is unavailable, to do what you were wanting); you just had to implement it, in the right fashion. This forum is here to help people who are interested in learning JavaScript or who need assistance with code; that they (themselves) have already created. It is not here to help you adapt a plugins code and make it work, the way you feel it should. That is what the developer and/or the developers forum (if they have one) is there for. What I did was take the time to point out to you that there was documentation and that's all I needed to do. I am not obligated to do anything for you or any one else. I just do it to help people out; I am not paid to do so. And... if anyone has a language barrier, I would say it was you and most likely it is a social disorder. You just make yourself look more and more unintelligent. I do regret helping a lowly individual like yourself, because people like you make other people not want to help each other. Because instead of being appreciative, you rant and rave about this, that and the other; in general... you just cause chaos on forums, as you have nothing better to do (people like you lead small lives). And... you are calling me lazy; if your the expert coder, who has such a lavish history, in different code environments; why did you not come up with something so awesome, it would have blown away; what you were trying to do, in the first place? It's because you cannot do it; that's why you had to come here for help (either because you do not know what to do or you are flat out lazy yourself). You do not worry, about how I help people; that is none of your concern. As I said before; I will not be helping you in anyway again. I tell you what I do presume; better yet... I will tell you what I know... you will not last on this forum long or any other; with you ignorant and hateful demeanor. No one will want to help you and you will probably keep saying enough rudely blasphemous putrid; that you will eventually get yourself banned. Furthermore, I would venture to guess; that you have troubles in other aspects of your life and just not on forums. Also, I was trying to motivate you; about trying to press the envelope; not give you a lecture. If anyone, needs some humility; it would be you. You think you know it all; but as you say, what you were trying to do... "It didn't work out". So... how you feeling now Mr. AI; lmao; what a joke you are; not to mention a POS.

    Comments on this post

    • web_loone08 disagrees : If anyone is "a bit off"; I would say it's you. I have been helping ppl on here for years and never have I dealt with a jerk like you before. I do understand what you were wanting to do & I could do it. I just would not show you how to do it.
  22. #12
  23. CSS & JS/DOM Adept
    Devshed Supreme Being (6500+ posts)

    Join Date
    Jul 2004
    Location
    USA (verifiably)
    Posts
    20,124
    Rep Power
    4303
    Ahem! Both of you! This has gotten out of hand. Perhaps I should just close this as it's not going anywhere. Anyway...

    Web_loone did make some assumptions that seem to be incorrect. And I'm not sure how he thought that documentation page would answer your question. However, it is clear that you don't know core JavaScript, mscottveach. Core JavaScript does not have drawing features, for that you need HTML5 Canvas or a library like you mentioned.

    mscottveach, why do you assume that Web_loone has ESL because his grammar isn't perfect and he seems to be misunderstanding you? Yes, a language barrier could influence that, but it can not be inferred from that. (Oddly enough you both seem to have the same ISP, even though you're in different areas of the country.)

    Originally Posted by mscottveach
    What are you talking about? As I said before, why in the world would I be posting here if I hadn't read the documentation? You linked to a page that is tangentially associated with my question, but does not answer it. And if it did, then I wouldn't be here in the first place.
    Lots of people ask questions here without reading the documentation. (Also most people who ask questions here definitely do not have a Master's in Comp-Sci.)

    Originally Posted by mscottveach
    This kind of question is *precisely* what a forum like this is for... I've been banging my head against this problem for a while, so it's time to see if anyone else has come up with something clever.
    Yes... but you're asking an advanced question about a third-party library. There are very few people who can answer a question like that.

    There may have been another point I wanted to address, but it's not worth the effort at this point.
    Spreading knowledge, one newbie at a time.

    Check out my blog. | Learn CSS. | PHP includes | X/HTML Validator | CSS validator | Common CSS Mistakes | Common JS Mistakes

    Remember people spend most of their time on other people's sites (so don't violate web design conventions).

IMN logo majestic logo threadwatch logo seochat tools logo