Jump to content

MJW

Members
  • Posts

    2,848
  • Joined

  • Last visited

  • Days Won

    70

Everything posted by MJW

  1. If you do the selection correctly, no properly functioning effect to will affect the region outside the selection. Make sure you've selected the region you want to modify, not its complement. Often with things like text, it's easier to select the background then to select the text. Make sure when you do that you remember to invert the selection before running the effect.
  2. Hardly surprising, since Cliff seems to be following the standard practice of asking the question with as few words as possible. People who expect others to take the time to answer their questions ought to be willing to take the time to ask clear, detailed questions.
  3. Automatic conversion to vectors is not the kind of thing Paint.net does. You might try Inkscape. Perhaps you could first Posterize the image with PDN. I can't say I've had really great luck with converting raster images to vectors with Inkscape, but that may just be a result of my limited experience with the program.
  4. I assume you're after something kind of like this: To get the lines, I used Ed Harvey's Stylize>Halftone plugin with the Shape set the Line Centered, the Size set to 4, the Angle set to 0, and the Contrast and Brightness adjusted to get a relative clear, detailed image. I then applied a Gaussian Blur with a radius of 1. I followed this with a Photo>Glow. The color's overly blue, but I'll explain the basic idea anyway. After erasing the photo's background, I duplicated the image. On the top layer, I used the Halftone and Gaussian Blur method just described, with the Secondary color set to bluish. The lower layer was disabled. I then set the top layer's blend mode to multiply and enabled the lower layer. I adjusted the lower layer's saturation to get a bluish cast with some color (I could have used more color). I merged the layers, then applied the Glow. EDIT: After looking at some Google images, I found the Star Wars holograms were usually bluish, not green, so I recolored the image. I'm not sure it's better, though. Maybe I'll try to improve it later on.
  5. I've asked about this in the past, and there appears to be no way to do what you want. Midora's OptionBasedEffects are much more flexible, but there's almost no documentation. Midora says they are very similar to the PropertyBased effects of IndirectUI.
  6. Thanks BoltBait! I look forward to trying out ILMerge. It may help with several plugin-related matters. Rick's no doubt correct about the increased plugin size not being that significant. I worry too much about such things. Nevertheless, that's quite an size increase for CodeLab. I've been distracted by some other things, and haven't gotten around to updating CodeLab for a while. The version I have is a mere 320 KB. It will be worth it if the code editor is improved.
  7. I'm actively (whatever that means) considering using OptionBased effects. I wish there were more documentation, or at least more examples to copy from. I also wish it didn't require a separate DLL. That may concern me more than it ought to. It's probably not that big of deal, but somehow I just worry about maintenance problems. I guess I could try to merge with ILMerge. I'm not sure if that would result in very large plugin DLLs.
  8. Actually I currently use the less logical method of reversing the direction when the absolute value of the angle is greater than 90; that is, when the outer-ring tick mark is on the left side. I chose that so that a tiny clockwise movement from the default 0 position won't reverse the direction. However, your comment makes me realize it might be better to set the default to 90 and use your positive/negative method.
  9. In my Texture Shader plugin, I ignore the outer ring. I don't like it, though. It's so inelegant to have a control, including a slider, that serves no purpose. I tried to come up with a decent use for the outer ring, but there aren't many things except angles for which a -180 to 180 range makes sense. I'm not optimistic my feature request will be granted. I hope it is. There are a number of plugins that use the PanAndSlider control to specify the direction of a light, but the ball control of the RollBallAndSliders control is a better fit. The one problem with the ball control is that it only allows light from the front, since the ball can't be turned backward. Light from the back is something of an anomaly, so I wouldn't have a particular problem with adding a checkbox that reverses the light direction, for plugins where that's desirable. (I currently have an experimental version of Texture Shader the uses the outer ring as a binary switch to select reversed light direction. I'm not crazy about it, but at least it determines the light direction like the rest of the control, and it's related to the light's angle, so the range kind of makes sense.)
  10. That's what it seems to be. Which makes the control's min/max values pretty useless.
  11. Perhaps I'm dense, but I have no idea what your point is. If the outer ring won't return values within the specified range, then I can't see how it can be useful in allowing the user to specify the light intensity. Unless you expect the user to specify the light intensity in the range -180 to 180 -- which is a degree of kludginess I wouldn't even consider. Better to just ignore the outer ring.
  12. I think it's slightly nonintuitive, but would probably be acceptable if it worked. Currently, I don't think it does, though perhaps I'm making a mistake. If I set the range to, for instance, 0 to 1, the slider works correctly, but it crashes as soon as try moving the ring clockwise. The range on the ring does not seem to follow the set range for the control value, so it returns a negative number, which is out of range.
  13. Essentially it's because I'm much more interested in writing graphics code than in writing UI code.
  14. For PropertyBasedEffects, I wish there were a control that was like the RollBallAndSliders control, but without the outer ring. For light directions, the control seems to me to be much nicer than the alternative of using the PanAndSlider (double vector) control, but the outer ring is meaningless. There are at least two ways it could be done. There could be a new control that returned a double pair, or there could be an option for the RollBallAndSliders control to not display the outer ring and associated slider, with no other change to its function.
  15. Or use the little blue question-mark icon in the upper-right corner if, like me, you haven't memorized all the keyboard shortcuts.
  16. Perhaps, but I'm not sure there's an easier way that will produce a margin that maintains sharp corners for arbitrary convex regions. Here's a very rough approximation of the emboss effect I had in mind (the transition at the corners is especially crude):
  17. I can say fairly confidently that there are no minor modifications to Edge Expander that would produce square outside edges. The corner distances for a square outside edge don't have any simple relationship to the distance to the nearest pixel. I think it's an interesting problem, and I would eventually like to make a plugin that would do that, but I don't believe it's easy to do. It would be fairly easy to write a plugin to produce bevel around a rectangular region, so maybe I'll try to do that sometime soon if no one beats me to it.
  18. There are probably simpler ways (and i'm not sure this is an "easy way"), but here's an idea. Add a new layer and fill it with black. Add a new layer. Run Render>Borders N' Shape to produce a white border. Run Object>Edge Expander with the Maximum Distance and Fade Rate set to produce the beveled region. Merge the layer with the black layer. Select the center region with the Magic Wand then invert the selection Run Distort>Texture Shader. Set the Image to White. Adjust the Texture Height Scale to produce a good bevel depth. Set the Directional Light Direction to a good position. I always like upward and leftward. Adjust the Directional Light Intensity if necessary. Set the Specularity to 0. Perhaps enable Antialiasing. Invert the selection and Erase the center region. An image could be stored in the clipboard for a fancier mat.
  19. I can offer a suggestion on how to do non-rectangular selections, though it would make the plugin considerably more complex. You could use the distance-transform idea, very similar to the way the Edge Expander works when restricted to the selection. The amount of color would depend on the distance to the edge of the selection, with values less than some distance being uncolored, then a jump to fully colored, which would then fade away. I think panning could be accomplished by adding a distance offset which depends on the XY position. One possible difficulty might be aliasing problems making boundary formed by the transition from uncolored to fully colored look ugly. Perhaps that could be reduced by adding a small transition region, so the coloring would increase rapidly but not instantly. While I'm at it, I'll mention an idea I had, even though it may be a little far from the plugin's original concept. What would be useful is if the plugin could allow embossed shading, so the frame looked like it was lighted by an angled light. EDIT: I realized after reading a comment by Eli in another thread, that my distance-transform idea won't work, since it will produce rounded corners. As far as I can determine, producing a scaled-down corner-preserving version of an arbitrary selection is actually pretty difficult. EDIT 2: Maybe not. I'll need to experiment a little. I think it might work. EDIT 3: It seems to work quite well, though it does round off inward-pointing corners. Significantly, it preserves corners for convex regions..
  20. Similar to Eli's suggestion: Add a layer Run PyroChild's Effects>Render>Border N' Shapes (on new layer), adjusting Width for desired border thickness. Use Magic Wand to select center area. Apply Effects>Blurs>Gaussian Blur, adjusting Radius for desired fade. Reverse selection Erase Selection. Flatten image.
  21. Thank you, toe_head2001. I'll probably give it a try. I've been trying to overcome my aversion to providing extra DLLs with plugins, but it still rubs me the wrong way. My original comment in this thread involved some functions I want to share between plugins. The functions fit into a single source file. I've found an acceptable solution in just putting the source file into a separate folder and linking the file into each project. But for more involved library functions, involving multiple files, (such as control libraries) that doesn't seem like a reasonable method.
  22. I'm pleased by that, because I prefer it. Following the Forms name conventions as far as possible is a good idea, and I'll do that. It will definitely be CheckBox, TextBox, and MultiLineTextBox.
  23. I'm happy you found a solution to your problem. I thought you needed the more general solution of reducing the edges to one-pixel width while maintaining connectivity. That's called "skeletonization" or "thinning." That's more complex, and I'm pretty sure there's no plugin to do that.
  24. I working on something related to the PropertyBased UI controls, and I'm not sure of the best names for them. The names will be part of method names. The titles of the controls used in CodeLab are: IntSliderControl CheckboxControl ColorWheelControl AngleControl PanSliderControl TextboxControl DoubleSliderControl ListBoxControl RadioButton ReseedButtonControl MultiLineTextboxControl RollControl The PropertyControlTypes are: Slider CheckBox ColorWheel AngleChooser PanAndSlider TextBox DropDown RadioButton IncrementButton RollBallAndSliders There are also the font list and pixel op controls from CodeLab, which I also want to include. Some names I'm considering are: IntegerSlider or IntSlider Checkbox or CheckBox ColorWheel or ColorChooser AngleChooser or AngleControl DoubleVector or PanControl Textbox or TextBox (I want the capitalization to match CheckBox, so either Textbox and Checkbox, or TextBox and CheckBox) DoubleSlider ListBox or Listbox or DropDownList RadioButtons (probably use the plural version, since there are always more than one) or RadioButtonList IncrementButton (which is what the function more generally is) MultiLineTextbox or MultiLineTextBox RollControl or ThreeDControl FontList or FontChooser PixelOps or BlendOps or PixelBlendOps or PixelOpList or BlendOpList (I seem to recall the official name for the pixel ops changed from one thing to another) Perhaps it seems silly, but I'm quite particular about naming things, so I was hoping for suggestions for the best descriptive name for each control.
×
×
  • Create New...