Add a 'capped' boolean parameter to all drawline/drawLine functions/methods. The idea is that this will produce better joining between lines
This commit is contained in:
parent
b49b2136f1
commit
0aa9b22049
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/include/cbgwindow.hxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -285,13 +285,15 @@ namespace NXWidgets
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
bool drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width,
|
||||
nxgl_mxpixel_t color);
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped);
|
||||
|
||||
/**
|
||||
* Draw a filled circle at the specified position, size, and color.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/include/cgraphicsport.hxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -242,11 +242,13 @@ namespace NXWidgets
|
|||
* @param x2 The x coordinate of the end point of the line.
|
||||
* @param y2 The y coordinate of the end point of the line.
|
||||
* @param color The color of the line.
|
||||
* @param capped Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*/
|
||||
|
||||
void drawLine(nxgl_coord_t x1, nxgl_coord_t y1,
|
||||
nxgl_coord_t x2, nxgl_coord_t y2,
|
||||
nxgl_mxpixel_t color);
|
||||
nxgl_mxpixel_t color, bool capped);
|
||||
|
||||
/**
|
||||
* Draw a filled rectangle of the specified start position, end position,
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/include/cnxtkwindow.hxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -306,13 +306,15 @@ namespace NXWidgets
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
bool drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width,
|
||||
nxgl_mxpixel_t color);
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped);
|
||||
|
||||
/**
|
||||
* Draw a filled circle at the specified position, size, and color.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/include/cnxtoolbar.hxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -275,13 +275,15 @@ namespace NXWidgets
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to suppor
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
bool drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width,
|
||||
nxgl_mxpixel_t color);
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped);
|
||||
|
||||
/**
|
||||
* Draw a filled circle at the specified position, size, and color.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/include/cnxwindow.hxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -279,12 +279,15 @@ namespace NXWidgets
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
bool drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color);
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped);
|
||||
|
||||
/**
|
||||
* Draw a filled circle at the specified position, size, and color.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/include/inxwindow.hxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -249,13 +249,15 @@ namespace NXWidgets
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
virtual bool drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width,
|
||||
nxgl_mxpixel_t color) = 0;
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped) = 0;
|
||||
|
||||
/**
|
||||
* Draw a filled circle at the specified position, size, and color.
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/src/cbgwindow.cxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -308,16 +308,19 @@ bool CBgWindow::fillTrapezoid(FAR const struct nxgl_rect_s *pClip,
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
bool CBgWindow::drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color)
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped)
|
||||
{
|
||||
// Draw a line with the specified color
|
||||
|
||||
return nx_drawline(m_hWindow, vector, width, &color) == OK;
|
||||
return nx_drawline(m_hWindow, vector, width, &color, capped) == OK;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/src/cgraphicsport.cxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -241,16 +241,18 @@ void CGraphicsPort::drawVertLine(nxgl_coord_t x, nxgl_coord_t y,
|
|||
/**
|
||||
* Draw a line of a fixed color in the window.
|
||||
*
|
||||
* @param x1 The x coordinate of the start point of the line.
|
||||
* @param y1 The y coordinate of the start point of the line.
|
||||
* @param x2 The x coordinate of the end point of the line.
|
||||
* @param y2 The y coordinate of the end point of the line.
|
||||
* @param color The color of the line.
|
||||
* @param x1 - The x coordinate of the start point of the line.
|
||||
* @param y1 - The y coordinate of the start point of the line.
|
||||
* @param x2 - The x coordinate of the end point of the line.
|
||||
* @param y2 - The y coordinate of the end point of the line.
|
||||
* @param color - The color of the line.
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* - better line joins
|
||||
*/
|
||||
|
||||
void CGraphicsPort::drawLine(nxgl_coord_t x1, nxgl_coord_t y1,
|
||||
nxgl_coord_t x2, nxgl_coord_t y2,
|
||||
nxgl_mxpixel_t color)
|
||||
nxgl_mxpixel_t color, bool capped)
|
||||
{
|
||||
struct nxgl_vector_s vector;
|
||||
|
||||
|
@ -259,7 +261,7 @@ void CGraphicsPort::drawLine(nxgl_coord_t x1, nxgl_coord_t y1,
|
|||
vector.pt2.x = x2;
|
||||
vector.pt2.y = y2;
|
||||
|
||||
if (!m_pNxWnd->drawLine(&vector, 1, color))
|
||||
if (!m_pNxWnd->drawLine(&vector, 1, color, capped))
|
||||
{
|
||||
gdbg("INxWindow::drawLine failed\n");
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/src/cnxtkwindow.cxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -442,16 +442,19 @@ bool CNxTkWindow::fillTrapezoid(FAR const struct nxgl_rect_s *pClip,
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
bool CNxTkWindow::drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color)
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped)
|
||||
{
|
||||
// Draw a line with the specified color
|
||||
|
||||
return nxtk_drawlinewindow(m_hNxTkWindow, vector, width, &color) == OK;
|
||||
return nxtk_drawlinewindow(m_hNxTkWindow, vector, width, &color, capped) == OK;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/src/cnxtoolbar.cxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -313,16 +313,19 @@ bool CNxToolbar::fillTrapezoid(FAR const struct nxgl_rect_s *pClip,
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
bool CNxToolbar::drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color)
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped)
|
||||
{
|
||||
// Draw a line with the specified color
|
||||
|
||||
return nxtk_drawlinetoolbar(m_hNxTkWindow, vector, width, &color) == OK;
|
||||
return nxtk_drawlinetoolbar(m_hNxTkWindow, vector, width, &color, capped) == OK;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* NxWidgets/libnxwidgets/src/cnxwindow.cxx
|
||||
*
|
||||
* Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -286,16 +286,19 @@ bool CNxWindow::fillTrapezoid(FAR const struct nxgl_rect_s *pClip,
|
|||
* @param vector - Describes the line to be drawn
|
||||
* @param width - The width of the line
|
||||
* @param color - The color to use to fill the line
|
||||
* @param capped - Draw a circular cap both ends of the line to support
|
||||
* better line joins
|
||||
*
|
||||
* @return True on success; false on failure.
|
||||
*/
|
||||
|
||||
bool CNxWindow::drawLine(FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color)
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color,
|
||||
bool capped)
|
||||
{
|
||||
// Draw a line with the specified color
|
||||
|
||||
return nx_drawline(m_hNxWindow, vector, width, &color) == OK;
|
||||
return nx_drawline(m_hNxWindow, vector, width, &color, capped) == OK;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* examples/nxlines/nxlines_bkgd.c
|
||||
*
|
||||
* Copyright (C) 2011-2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2011-2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -293,7 +293,8 @@ void nxlines_test(NXWINDOW hwnd)
|
|||
/* Clear the previous line by overwriting it with the circle color */
|
||||
|
||||
color[0] = CONFIG_EXAMPLES_NXLINES_CIRCLECOLOR;
|
||||
ret = nx_drawline((NXWINDOW)hwnd, &previous, CONFIG_EXAMPLES_NXLINES_LINEWIDTH, color);
|
||||
ret = nx_drawline((NXWINDOW)hwnd, &previous,
|
||||
CONFIG_EXAMPLES_NXLINES_LINEWIDTH, color, false);
|
||||
if (ret < 0)
|
||||
{
|
||||
printf("nxlines_test: nx_drawline failed clearing: %d\n", ret);
|
||||
|
@ -302,7 +303,8 @@ void nxlines_test(NXWINDOW hwnd)
|
|||
/* Draw the new line */
|
||||
|
||||
color[0] = CONFIG_EXAMPLES_NXLINES_LINECOLOR;
|
||||
ret = nx_drawline((NXWINDOW)hwnd, &vector, CONFIG_EXAMPLES_NXLINES_LINEWIDTH, color);
|
||||
ret = nx_drawline((NXWINDOW)hwnd, &vector,
|
||||
CONFIG_EXAMPLES_NXLINES_LINEWIDTH, color, false);
|
||||
if (ret < 0)
|
||||
{
|
||||
printf("nxlines_test: nx_drawline failed clearing: %d\n", ret);
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
<h1><big><font color="#3c34ec">
|
||||
<i>NX Graphics Subsystem</i>
|
||||
</font></big></h1>
|
||||
<p>Last Updated: December 28, 2013</p>
|
||||
<p>Last Updated: April 5, 2015</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
@ -1759,7 +1759,8 @@ int nx_filltrapezoid(NXWINDOW hwnd, FAR const struct nxgl_rect_s *clip,
|
|||
#include <nuttx/nx/nx.h>
|
||||
|
||||
int nx_drawline(NXWINDOW hwnd, FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
bool capped);
|
||||
</pre></ul>
|
||||
<p>
|
||||
<b>Description:</b>
|
||||
|
@ -1780,6 +1781,8 @@ int nx_drawline(NXWINDOW hwnd, FAR struct nxgl_vector_s *vector,
|
|||
<dd>The width of the line
|
||||
<dt><code>color</code>
|
||||
<dd>The color to use to fill the line
|
||||
<dt><code>capped</code>
|
||||
<dd>Draw a circular cap both ends of the line to support better line joins
|
||||
</dl></ul>
|
||||
</p>
|
||||
<p>
|
||||
|
@ -2385,7 +2388,8 @@ int nxtk_filltrapwindow(NXTKWINDOW hfwnd,
|
|||
#include <nuttx/nx/nxtk.h>
|
||||
|
||||
int nxtk_drawlinewindow(NXTKWINDOW hfwnd, FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
bool capped);
|
||||
</pre></ul>
|
||||
<p>
|
||||
<b>Description:</b>
|
||||
|
@ -2406,6 +2410,8 @@ int nxtk_drawlinewindow(NXTKWINDOW hfwnd, FAR struct nxgl_vector_s *vector,
|
|||
<dd>The width of the line
|
||||
<dt><code>color</code>
|
||||
<dd>The color to use to fill the line
|
||||
<dt><code>capped</code>
|
||||
<dd>Draw a circular cap both ends of the line to support better line joins
|
||||
</dl></ul>
|
||||
</p>
|
||||
<p>
|
||||
|
@ -2738,7 +2744,8 @@ int nxtk_filltraptoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_trapezoid_s *tr
|
|||
#include <nuttx/nx/nxtk.h>
|
||||
|
||||
int nxtk_drawlinetoolbar(NXTKWINDOW hfwnd, FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
capped);
|
||||
|
||||
</pre></ul>
|
||||
<p>
|
||||
|
@ -2759,6 +2766,8 @@ int nxtk_drawlinetoolbar(NXTKWINDOW hfwnd, FAR struct nxgl_vector_s *vector,
|
|||
<dd>The width of the line
|
||||
<dt><code>color</code>
|
||||
<dd>The color to use to fill the line
|
||||
<dt><code>capped</code>
|
||||
<dd>Draw a circular cap both ends of the line to support better line joins
|
||||
</dl></ul>
|
||||
</p>
|
||||
<p>
|
||||
|
|
32
nuttx/TODO
32
nuttx/TODO
|
@ -880,20 +880,24 @@ o Network (net/, drivers/net)
|
|||
should be eliminated). This applies to almost all Ethernet
|
||||
drivers:
|
||||
|
||||
ARCHITECTURE CONFIG_NET_NOINTS
|
||||
C5471 NO
|
||||
STM32 YES <<
|
||||
TIVA/LM3S NO
|
||||
TIVA/TM4C YES <<
|
||||
eZ80 NO
|
||||
LPC17xx YES <<
|
||||
DMxxx NIC NO
|
||||
PIC32 NO
|
||||
RGMP NO
|
||||
SAM3/4 YES <<
|
||||
SAMA5D3 NO
|
||||
SAMA5D4 YES <<
|
||||
SIM N/A << Doesn't support interrupts
|
||||
ARCHITECTURE CONFIG_NET_NOINTS? ADDRESS FILTER SUPPORT?
|
||||
C5471 NO NO
|
||||
STM32 YES YES
|
||||
TIVA ----------------------- ------
|
||||
LM3S NO NO
|
||||
TM4C YES YES
|
||||
eZ80 NO NO
|
||||
LPC17xx YES (could be issues) YES (not tested)
|
||||
DMxxx NIC NO NO
|
||||
PIC32 NO NO
|
||||
RGMP ??? ???
|
||||
SAM3/4 YES YES
|
||||
SAMA5D ----------------------- ------
|
||||
EMACA NO YES (not tested)
|
||||
EMACB YES YES
|
||||
GMAC NO YES (not tested)
|
||||
SAMV7 YES YES
|
||||
SIM N/A (No interrupts) NO
|
||||
|
||||
The general outline of how this might be done is included in
|
||||
drivers/net/skeleton.c
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* include/nuttx/nx/nx.h
|
||||
*
|
||||
* Copyright (C) 2008-2011 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2008-2011, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -776,6 +776,8 @@ int nx_filltrapezoid(NXWINDOW hwnd, FAR const struct nxgl_rect_s *clip,
|
|||
* vector - Describes the line to be drawn
|
||||
* width - The width of the line
|
||||
* color - The color to use to fill the line
|
||||
* capped - Draw a circular cap both ends of the line to support better
|
||||
* line joins
|
||||
*
|
||||
* Return:
|
||||
* OK on success; ERROR on failure with errno set appropriately
|
||||
|
@ -783,7 +785,8 @@ int nx_filltrapezoid(NXWINDOW hwnd, FAR const struct nxgl_rect_s *clip,
|
|||
****************************************************************************/
|
||||
|
||||
int nx_drawline(NXWINDOW hwnd, FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
bool capped);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: nx_drawcircle
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* include/nuttx/nx/nxtk.h
|
||||
*
|
||||
* Copyright (C) 2008-2012 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2008-2012, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -354,6 +354,8 @@ EXTERN int nxtk_filltrapwindow(NXTKWINDOW hfwnd,
|
|||
* vector - Describes the line to be drawn
|
||||
* width - The width of the line
|
||||
* color - The color to use to fill the line
|
||||
* capped - Draw a circular cap both ends of the line to support better
|
||||
* line joins
|
||||
*
|
||||
* Return:
|
||||
* OK on success; ERROR on failure with errno set appropriately
|
||||
|
@ -363,7 +365,8 @@ EXTERN int nxtk_filltrapwindow(NXTKWINDOW hfwnd,
|
|||
EXTERN int nxtk_drawlinewindow(NXTKWINDOW hfwnd,
|
||||
FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width,
|
||||
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
|
||||
nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
bool capped);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: nxtk_drawcirclewindow
|
||||
|
@ -598,6 +601,8 @@ EXTERN int nxtk_filltraptoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_trapezoi
|
|||
* vector - Describes the line to be drawn
|
||||
* width - The width of the line
|
||||
* color - The color to use to fill the line
|
||||
* capped - Draw a circular cap both ends of the line to support better
|
||||
* line joins
|
||||
*
|
||||
* Return:
|
||||
* OK on success; ERROR on failure with errno set appropriately
|
||||
|
@ -607,7 +612,8 @@ EXTERN int nxtk_filltraptoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_trapezoi
|
|||
EXTERN int nxtk_drawlinetoolbar(NXTKWINDOW hfwnd,
|
||||
FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width,
|
||||
nxgl_mxpixel_t color[CONFIG_NX_NPLANES]);
|
||||
nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
bool capped);
|
||||
|
||||
/****************************************************************************
|
||||
* Name: nxtk_drawcircletoolbar
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* libnx/nx/nx_drawcircle.c
|
||||
*
|
||||
* Copyright (C) 2011, 2013 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2011, 2013, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -128,7 +128,7 @@ int nx_drawcircle(NXWINDOW hwnd, FAR const struct nxgl_point_s *center,
|
|||
vector.pt1.y = pts[i].y;
|
||||
vector.pt2.x = pts[i+1].x;
|
||||
vector.pt2.y = pts[i+1].y;
|
||||
ret = nx_drawline(hwnd, &vector, width, color);
|
||||
ret = nx_drawline(hwnd, &vector, width, color, true);
|
||||
if (ret != OK)
|
||||
{
|
||||
return ret;
|
||||
|
@ -141,5 +141,5 @@ int nx_drawcircle(NXWINDOW hwnd, FAR const struct nxgl_point_s *center,
|
|||
vector.pt1.y = pts[POINT_337p5].y;
|
||||
vector.pt2.x = pts[POINT_0p0].x;
|
||||
vector.pt2.y = pts[POINT_0p0].y;
|
||||
return nx_drawline(hwnd, &vector, width, color);
|
||||
return nx_drawline(hwnd, &vector, width, color, true);
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* libnx/nx/nx_drawline.c
|
||||
*
|
||||
* Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2011, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -83,6 +83,8 @@
|
|||
* vector - Describes the line to be drawn
|
||||
* width - The width of the line
|
||||
* color - The color to use to fill the line
|
||||
* capped - Draw a circular cap both ends of the line to support better
|
||||
* line joins
|
||||
*
|
||||
* Return:
|
||||
* OK on success; ERROR on failure with errno set appropriately
|
||||
|
@ -90,7 +92,8 @@
|
|||
****************************************************************************/
|
||||
|
||||
int nx_drawline(NXWINDOW hwnd, FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES])
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
bool capped)
|
||||
{
|
||||
struct nxgl_trapezoid_s trap[3];
|
||||
struct nxgl_rect_s rect;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* libnx/nxtk/nxtk_drawcircletoolbar.c
|
||||
*
|
||||
* Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2011, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -128,7 +128,7 @@ int nxtk_drawcircletoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_point_s *cent
|
|||
vector.pt1.y = pts[i].y;
|
||||
vector.pt2.x = pts[i+1].x;
|
||||
vector.pt2.y = pts[i+1].y;
|
||||
ret = nxtk_drawlinetoolbar(hfwnd, &vector, width, color);
|
||||
ret = nxtk_drawlinetoolbar(hfwnd, &vector, width, color, true);
|
||||
if (ret != OK)
|
||||
{
|
||||
return ret;
|
||||
|
@ -141,5 +141,5 @@ int nxtk_drawcircletoolbar(NXTKWINDOW hfwnd, FAR const struct nxgl_point_s *cent
|
|||
vector.pt1.y = pts[POINT_337p5].y;
|
||||
vector.pt2.x = pts[POINT_0p0].x;
|
||||
vector.pt2.y = pts[POINT_0p0].y;
|
||||
return nxtk_drawlinetoolbar(hfwnd, &vector, width, color);
|
||||
return nxtk_drawlinetoolbar(hfwnd, &vector, width, color, true);
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* libnx/nxtk/nxtk_drawcirclewindow.c
|
||||
*
|
||||
* Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2011, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -128,7 +128,7 @@ int nxtk_drawcirclewindow(NXTKWINDOW hfwnd, FAR const struct nxgl_point_s *cente
|
|||
vector.pt1.y = pts[i].y;
|
||||
vector.pt2.x = pts[i+1].x;
|
||||
vector.pt2.y = pts[i+1].y;
|
||||
ret = nxtk_drawlinewindow(hfwnd, &vector, width, color);
|
||||
ret = nxtk_drawlinewindow(hfwnd, &vector, width, color, true);
|
||||
if (ret != OK)
|
||||
{
|
||||
return ret;
|
||||
|
@ -141,5 +141,5 @@ int nxtk_drawcirclewindow(NXTKWINDOW hfwnd, FAR const struct nxgl_point_s *cente
|
|||
vector.pt1.y = pts[POINT_337p5].y;
|
||||
vector.pt2.x = pts[POINT_0p0].x;
|
||||
vector.pt2.y = pts[POINT_0p0].y;
|
||||
return nxtk_drawlinewindow(hfwnd, &vector, width, color);
|
||||
return nxtk_drawlinewindow(hfwnd, &vector, width, color, true);
|
||||
}
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* libnx/nxtk/nxtk_drawlinetoolbar.c
|
||||
*
|
||||
* Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2011, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -85,6 +85,8 @@
|
|||
* vector - Describes the line to be drawn
|
||||
* width - The width of the line
|
||||
* color - The color to use to fill the line
|
||||
* capped - Draw a circular cap both ends of the line to support better
|
||||
* line joins
|
||||
*
|
||||
* Return:
|
||||
* OK on success; ERROR on failure with errno set appropriately
|
||||
|
@ -92,7 +94,8 @@
|
|||
****************************************************************************/
|
||||
|
||||
int nxtk_drawlinetoolbar(NXTKWINDOW hfwnd, FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES])
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
bool capped)
|
||||
|
||||
{
|
||||
struct nxgl_trapezoid_s trap[3];
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/****************************************************************************
|
||||
* libnx/nxtk/nxtk_drawlinewindow.c
|
||||
*
|
||||
* Copyright (C) 2011 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2011, 2015 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <gnutt@nuttx.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
|
@ -84,6 +84,8 @@
|
|||
* vector - Describes the line to be drawn
|
||||
* width - The width of the line
|
||||
* color - The color to use to fill the line
|
||||
* capped - Draw a circular cap both ends of the line to support better
|
||||
* line joins
|
||||
*
|
||||
* Return:
|
||||
* OK on success; ERROR on failure with errno set appropriately
|
||||
|
@ -91,7 +93,8 @@
|
|||
****************************************************************************/
|
||||
|
||||
int nxtk_drawlinewindow(NXTKWINDOW hfwnd, FAR struct nxgl_vector_s *vector,
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES])
|
||||
nxgl_coord_t width, nxgl_mxpixel_t color[CONFIG_NX_NPLANES],
|
||||
bool capped)
|
||||
|
||||
{
|
||||
struct nxgl_trapezoid_s trap[3];
|
||||
|
|
Loading…
Reference in New Issue